Java, 32-разрядный по сравнению с 64-разрядной совместимостью

Вы можете использовать ограничения LIMIT и OFFSET для разбивки на страницы в MySQL. Я понимаю, что за один раз данные 2 lacs замедляют производительность. Но, как вы упоминаете, вы должны использовать JS для этого. Поэтому дайте понять, что если вы хотите js в качестве внешнего интерфейса, то это вам не поможет. Но, как вы упомянули, что у вас есть веб-приложение, если это приложение включено Node(as server), то я могу предложить вам путь, который может вам очень помочь.

используют 2 переменные, названные var_pageNo и var_limit. Теперь используйте запрос строки mysql как

select * form <tbl_name> LIMIT var_limit OFFSET (var_pageNo * var_limit);

Делайте код в соответствии с этим запросом. Замените переменную на ваши значения желаний. Это ускорит вашу производительность и получит данные в соответствии с указанным вами пределом.

Надеюсь, это будет полезно.

96
задан Gregor 19 December 2012 в 11:00
поделиться

5 ответов

Yes, Java bytecode (and source code) is platform independent, assuming you use platform independent libraries. 32 vs. 64 bit shouldn't matter.

92
ответ дан 24 November 2019 в 05:40
поделиться

Я случайно запустил наше (большое) приложение на 64-битной виртуальной машине, а не на 32-битной виртуальной машине, и не заметил, пока некоторые внешние библиотеки (вызываемые JNI) не начали работать.

Данные сериализованы в 32-битная платформа была прочитана на 64-битной платформе без каких-либо проблем.

Какие проблемы у вас возникают? Некоторые вещи работают, а другие нет? Вы пытались подключить JConsole и т. Д., И у вас есть пик?

Если у вас очень большая виртуальная машина, вы можете обнаружить, что проблемы с GC в 64-битной среде могут вас затронуть.

20
ответ дан 24 November 2019 в 05:40
поделиться

Yes to the first question and no to the second question; it's a virtual machine. Your problems are probably related to unspecified changes in library implementation between versions. Although it could be, say, a race condition.

There are some hoops the VM has to go through. Notably references are treated in class files as if they took the same space as ints on the stack. double and long take up two reference slots. For instance fields, there's some rearrangement the VM usually goes through anyway. This is all done (relatively) transparently.

Also some 64-bit JVMs use "compressed oops". Because data is aligned to around every 8 or 16 bytes, three or four bits of the address are useless (although a "mark" bit may be stolen for some algorithms). This allows 32-bit address data (therefore using half as much bandwidth, and therefore faster) to use heap sizes of 35- or 36-bits on a 64-bit platform.

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

Весь байт-код основан на 8 битах. (Вот почему он называется кодом BYTE). Все инструкции кратны 8-битному размеру. Мы разрабатываем на 32-битных машинах и запускаем наши серверы с 64-битной JVM.

Не могли бы вы рассказать подробнее о проблеме, с которой вы столкнулись? Тогда у нас может быть шанс помочь вам. В противном случае мы бы просто догадались, в чем проблема у вас.

10
ответ дан 24 November 2019 в 05:40
поделиться

Если у вас нет собственного кода (машинного кода, скомпилированного для конкретной arcitechture), ваш код будет одинаково хорошо работать в 32-разрядной и 64-разрядной JVM.

Обратите внимание, однако, что из-за для больших адресов (32-разрядный - 4 байта, 64-разрядный - 8 байтов) 64-разрядная JVM потребует больше памяти, чем 32-разрядная JVM для той же задачи.

8
ответ дан 24 November 2019 в 05:40
поделиться
Другие вопросы по тегам:

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