Каковы преимущества Калитки Apache? [закрытый]

Я не уверен, что значение фактическое , но я вижу практический верхний предел около 400 000 в node.js (на Mac с 16 ГБ ОЗУ ).

Вот журнал, в котором я добавляю строки из базы данных в объект:

[[21:32:34.325]] [LOG] 340001, pint of delight
[[21:32:35.574]] [LOG] 350001, pound shrimp
[[21:32:36.545]] [LOG] 360001, ravioli allaragosta
[[21:32:37.721]] [LOG] 370001, roasted ham and cheese
[[21:32:39.862]] [LOG] 380001, salmon kama
[[21:32:41.152]] [LOG] 390001, scallops and vegetables
[[21:32:42.150]] [LOG] 400001, show cabernet ca
[[21:32:44.412]] [LOG] 410001, sloppy nachos
[[21:33:25.425]] [LOG] 420001, spaghetti or ziti sauce
[[21:35:37.839]] [LOG] 430001, steak au poivre vert
[[21:37:37.202]] [LOG] 440001, sushi moriawase
[[21:39:45.365]] [LOG] 450001, tequila shooters
[[21:42:09.036]] [LOG] 460001, toro roll with scallion
[[21:44:32.796]] [LOG] 470001, two enchiladas taco rice and refried beans
[[21:47:02.584]] [LOG] 480001, veuve clicquot ponsardin rose reims nv
[[21:49:04.020]] [LOG] 490001, whole turkey gourmet sides
[[21:51:15.264]] [LOG] finished

До 400 000 секунд требуется около 1 секунды для вставки 10 000 новых записей. Прошлое 410 000, время увеличивается почти экспоненциально.

Я не уверен, как я это разрешу. Может быть, сделать 2 объекта и ограничить их до 400 000 клавиш каждый ... немного трудоемкий, но лучше, чем переписывать объект словаря:)

Обновление: похоже, на самом деле это объем используемой памяти, выдает и не столько количество объектов. Моя машина замедляет сканирование примерно на 1,5 ГБ оперативной памяти. Он может быть связан с памятью, выделенной для процесса node.js, который может быть увеличен с помощью этого параметра: --max_old_space_size = 4096 (число в MB).

22
задан dtc 12 February 2009 в 23:38
поделиться

5 ответов

Преимущества, которые часто рекламируются в кругах, которые я часто посещаю:

  1. Ваш HTML может быть полностью xhtml совместим - существует ОЧЕНЬ хорошее разделение презентации и логики в этом единственная вещь, которую Ваш слой презентации/HTML должен знать о калитке, атрибуты wicketid в стандартных тегах HTML. Это замечательно для клиентского парня html/css/javascript в Вашей команде, которая делает мало ни к какой фактической работе Java. Никакая другая основанная на Java веб-платформа не может требовать этого, afaik.
  2. Никакие xml не конфигурируют ни для чего конкретную калитку - все может быть сделано в источнике, и очень небольшие потребности, которые будут сделаны к стандартному web.xml для Вашей компонентной разработки .war
  3. , довольно легко к grok - особенно, если у Вас есть не веб-фон (например, программист колебания). это поощряет повторное использование вполне немного больше, чем mvc делает, imo.
27
ответ дан whaley 29 November 2019 в 03:24
поделиться

Spring является более всеобъемлющим, чем Калитка.

Калитка является сетью Java платформа UI. Spring имеет тот также, наряду с модулями для персистентности, дистанционной работы, безопасности, обмена сообщениями, и т.д.

, Spring основан на внедрении зависимости и AOP. Калитка не имеет ни одного.

я не использовал его, но это, как предполагается, просто. Я не могу сказать, легче ли Spring или более тверд.

можно использовать Spring для хорошего преимущества в большом количестве ситуаций помимо веб-приложений.

9
ответ дан duffymo 29 November 2019 в 03:24
поделиться

Больше Spring, чем Spring MVC. Вы можете (и вероятно должен), Spring использования с Калиткой.

11
ответ дан 29 November 2019 в 03:24
поделиться

Вы можете прочитать о преимуществах использования Wicket в первой бесплатной главе Wicket In Action: http://www.manning.com/dashorst/

Короче говоря, Wicket - отличный фреймворк, когда приложение, которое вы разрабатываете, является относительно сложным, вы хотите, чтобы его можно было поддерживать, чтобы можно было масштабировать команду и использовать преимущества повторного использования. Объектно-ориентированное программирование оказалось очень полезной парадигмой для программирования пользовательских интерфейсов, но, к сожалению, большинство фреймворков Java для разработки веб-приложений, включая Spring MVC, поддерживают только очень процедурную модель программирования, где они помечают термин MVC, чтобы он звучал круто (но на самом деле, поскольку степень детализации, которую они поддерживают, представляет собой двусторонние запросы / ответы, а не автономные виджеты, MVC действительно вводит в заблуждение).

DI-часть Spring великолепна,

6
ответ дан 29 November 2019 в 03:24
поделиться

Калитка качается!

Spring (часть пользовательского интерфейса которого называется Spring MVC) просто кажется мега-фреймворком «делай все, включая кухонную раковину», из-за которого он казался мне огромным и громоздким, когда я начинал оценивать Spring. (и Spring MVC). Сегодня весна, как мне кажется, не сосредоточена ни на чем. Первоначально я думаю, что это была просто структура внедрения зависимостей, но она быстро выросла, чтобы пытаться быть всем для всех, и простота была потеряна.

В книгах, которые я читал по Spring, были примеры, содержащие слишком много конфигурации XML. Ошибки в файлах конфигурации XML намного сложнее отлаживать и исправлять, чем ошибки в коде Java, которые вы можете выполнить за один шаг с помощью отладчика.

Что плохого в объявлении чего-либо в коде Java вместо XML? С каких это пор кто-то постановил, что в любом случае все должно быть объявлено в XML? Если вам нравится плавать в море сложных файлов конфигурации XML, выбирайте Spring. Если вам нравится выполнять работу и быть продуктивным, выбирайте Wicket.

Wicket очень ориентирован на то, чтобы быть лучшей средой пользовательского интерфейса на основе Java для разработки веб-приложений. Он не пытается привязать вас к какой-либо конкретной структуре внедрения зависимостей или какой-либо конкретной структуре персистентности (используйте ее с JDO / JPA, DataNucleus, Hibernate и т. Д.).

Ясно, что основное внимание уделяется пользовательскому интерфейсу, но вы можете использовать любую структуру внедрения зависимостей, которая вам нравится (вам не обязательно использовать Spring DI, но вы можете, если хотите). Мы даже используем наш собственный DI ( http://www.expojo.com ) с Wicket, и все это круто.

11
ответ дан 29 November 2019 в 03:24
поделиться
Другие вопросы по тегам:

Похожие вопросы: