JavaÖи÷ÀàCache»úÖÆÊµÏÖ½â¾ö·½°¸
ÎÄÕÂÀ´Ô´£ºhttp://java.chinaitlab.com/base/808164.html
ÔÚJavaÖУ¬²»Í¬µÄÀà¶¼ÓÐ×Ô¼ºµ¥¶ÀµÄCache»úÖÆ£¬ÊµÏֵķ½·¨Ò²¿ÉÄÜÓÐËù²»Í¬£¬ÎÄÕÂÁоÙÁËJavaÖг£¼ûµÄ¸÷ÀàCache»úÖÆµÄʵÏÖ·½·¨£¬Í¬Ê±½øÐÐÁË×ۺϵıȽϡ£
¡¡¡¡OSCache
¡¡¡¡OSCacheÊǸöÒ»¸ö¹ã·º²ÉÓõĸßÐÔÄܵÄJava EE»º´æ¿ò¼Ü£¬OSCacheÄÜÓÃÓÚÈκÎJavaÓ¦ÓóÌÐòµÄÆÕͨµÄ»º´æ½â¾ö·½°¸¡£
¡¡¡¡OSCacheÓÐÒÔÏÂÌØµã£º»º´æÈκζÔÏó£¬Äã¿ÉÒÔ²»ÊÜÏÞÖÆµÄ»º´æ²¿·ÖjspÒ³Ãæ»òHTTPÇëÇó£¬ÈκÎjava¶ÔÏ󶼿ÉÒÔ»º´æ¡£ÓµÓÐÈ«ÃæµÄAPI--OSCache API¸øÄãÈ«ÃæµÄ³ÌÐòÀ´¿ØÖÆËùÓеÄOSCacheÌØÐÔ¡£
¡¡¡¡ÓÀ¾Ã»º´æ--»º´æÄÜËæÒâµÄдÈëÓ²ÅÌ£¬Òò´ËÔÊÐí°º¹óµÄ´´½¨(expensive-to-create)Êý¾ÝÀ´±£³Ö»º´æ£¬ÉõÖÁÄÜÈÃÓ¦ÓÃÖØÆô¡£Ö§³Ö¼¯Èº--¼¯Èº»º´æÊý¾ÝÄܱ»µ¥¸öµÄ½øÐвÎÊýÅäÖ㬲»ÐèÒªÐ޸ĴúÂë¡£»º´æ¼Ç¼µÄ¹ýÆÚ--Äã¿ÉÒÔÓÐ×î´óÏ޶ȵĿØÖÆ»º´æ¶ÔÏóµÄ¹ýÆÚ£¬°üÀ¨¿É²åÈëʽµÄˢвßÂÔ(Èç¹ûĬÈÏÐÔÄܲ»ÐèҪʱ)¡£
¡¡¡¡Java Caching System
¡¡¡¡JSC(Java Caching System)ÊÇÒ»¸öÓ÷ֲ¼Ê½µÄ»º´æÏµÍ³£¬ÊÇ»ùÓÚ·þÎñÆ÷µÄjavaÓ¦ÓóÌÐò¡£ËüÊÇͨ¹ýÌṩ¹ÜÀí¸÷ÖÖ¶¯Ì¬»º´æÊý¾ÝÀ´¼ÓËÙ¶¯Ì¬webÓ¦Óá£JCSºÍÆäËû»º´æÏµÍ³Ò»Ñù£¬Ò²ÊÇÒ»¸öÓÃÓÚ¸ßËÙ¶ÁÈ¡£¬µÍËÙдÈëµÄÓ¦ÓóÌÐò¡£¶¯Ì¬ÄÚÈݺͱ¨±íϵͳÄܹ»»ñµÃ¸üºÃµÄÐÔÄÜ¡£
¡¡¡¡Èç¹ûÒ»¸öÍøÕ¾£¬ÓÐÖØ¸´µÄÍøÕ¾½á¹¹£¬Ê¹ÓüäЪÐÔ¸üз½Ê½µÄÊý¾Ý¿â(¶ø²»ÊÇÁ¬Ðø²»¶ÏµÄ¸üÐÂÊý¾Ý¿â)£¬±»Öظ´ËÑË÷³öÏàͬ½á¹ûµÄ£¬¾ÍÄܹ»Í¨¹ýÖ´Ðлº´æ·½Ê½¸Ä½øÆäÐÔÄܺÍÉìËõÐÔ¡£
¡¡¡¡EHCache
¡¡¡¡EHCacheÊÇÒ»¸ö´¿JavaµÄÔÚ½ø³ÌÖеĻº´æ£¬Ëü¾ßÓÐÒÔÏÂÌØÐÔ£º¿ìËÙ£¬¼òµ¥£¬ÎªHibernate 2.1³äµ±¿É²åÈëµÄ»º´æ£¬×îСµÄÒÀÀµÐÔ£¬È«ÃæµÄÎĵµºÍ²âÊÔ¡£
¡¡¡¡JCache
¡¡¡¡JCacheÊǸö¿ªÔ´³ÌÐò£¬ÕýÔÚŬÁ¦³ÉΪJSR-107¿ªÔ´¹æ·¶£¬JSR-107¹æ·¶ÒѾºÜ¶àÄêû¸Ä±äÁË¡£Õâ¸ö°æ±¾ÈÔÈ»Êǹ¹½¨ÔÚ×î³õµÄ¹¦Äܶ¨ÒåÉÏ¡£
¡¡¡¡ShiftOne
¡¡¡¡ShiftOne Java Object CacheÊÇÒ»¸öÖ´ÐÐһϵÁÐÑϸñµÄ¶ÔÏ󻺴æ²ßÂÔµÄJava lib£¬¾ÍÏñÒ»¸öÇáÁ¿¼¶µÄÅäÖûº´æ¹¤×÷״̬µÄ¿ò¼Ü¡£
¡¡¡¡SwarmCache
¡¡¡¡SwarmCacheÊÇÒ»¸ö¼òµ¥ÇÒÓÐЧµÄ·Ö²¼Ê½»º´æ£¬ËüʹÓÃIP multicastÓëͬһ¸ö¾ÖÓòÍøµÄÆäËûÖ÷»ú½øÐÐͨѶ£¬ÊÇÌØ±ðΪ¼¯ÈººÍÊý¾ÝÇý¶¯webÓ¦ÓóÌÐò¶øÉè¼ÆµÄ¡£SwarmCacheÄܹ»ÈõäÐ͵ĶÁ²Ù×÷´ó´ó³¬¹ýд²Ù×÷µÄÕâÀàÓ¦ÓÃÌṩ¸üºÃµÄÐÔÄÜÖ§³Ö¡£ SwarmCacheʹÓÃJavaGroupsÀ´¹ÜÀí´ÓÊô¹ØÏµºÍ·Ö²¼Ê½»º´æµÄͨѶ¡£
¡¡¡¡TreeCache/JBossCache
¡¡¡¡JBossCacheÊÇÒ»¸ö¸´ÖƵÄÊÂÎñ´¦Àí»º´æ£¬ËüÔÊÐíÄ㻺´æÆóÒµ¼¶Ó¦ÓÃÊý¾ÝÀ´¸üºÃµÄ¸ÄÉÆÐÔÄÜ¡£»º´
Ïà¹ØÎĵµ£º
Ò».ÔõÑùÓÃsocket½øÐпͻ§Óë·þÎñÆ÷ͨÐÅ
ÔÚJavaÖÐÓÃsocket½øÐпͻ§/·þÎñÆ÷Ö®¼äµÄͨÐűà³Ì¡£SocketÊÇÁ½¸öʵÌåÖ®¼ä½øÐÐͨÐŵÄÓÐЧ¶Ëµã¡£Í¨¹ýsocket¿ÉÒÔ»ñµÃÔ´IPµØÖ·ºÍÔ´¶Ë¿Ú¡¢ÖÕµãIPµØÖ·ºÍÖÕµã¶Ë¿Ú¡£Óû§¿ÉÒÔ½«¶à¸ösocketÁ¬Èëͬһ¸ö¶Ë¿Ú£¬ÒÔ±ã¶ÔÓÚµ¥¸ö¶Ë¿Ú¿ÉÒÔÓжà¸öÁ¬½Ó¡£Í¨¹ýsocket¿Í»§/·þÎñÆ÷±à³Ì¿ÉÒÔ´´½¨Ò»¸öÄܱ»Ðí¶àÈËÊ¹Ó ......
¿É´ÓIOµÄÀà²ã´Î£¬IO¿ò¼ÜµÄÉè¼ÆÄ£Ê½À´ÂÛÊö¡£
×ÜÌåÀ´Ëµ£¬IO¿ÉÒÔ·ÖΪ×Ö½ÚÁ÷ºÍ×Ö·ûÁ÷£¬²»Í¬ÔÚÓÚ×Ö·ûÁ÷ÓÉ×Ö½ÚÁ÷°ü×°¶øÀ´£¬ÔÚIO¶ÁÈëÖ®ºó¾¹ýJVM´¦Àí£¬°Ñ×Ö½ÚÁ÷ת»»³É×Ö·ûÁ÷¡£¶ø×Ö·ûÁ÷µÄ×Ö·û²ÉÓÃÄÄÖÖ×Ö·û±àÂëʵÏÖÓÉJVMĬÈϱàÂë¾ö¶¨¡£
¶øÃ¿¸öÁ÷¶¼·ÖÊäÈëºÍÊä³ö£¬ËùÒÔ£¬×ÜÌåÀ´Ëµ£¬IOÓÐËĸö¶¥²ãÀࣺ
InputStream
OutputStream ......
Ôڳɹ¦ÊµÏÖJavaµ÷ÓÃC++Ö®ºó£¬½ÓÏÂÀ´Ïëµ½ÄÜ·ñͨ¹ýJNAʵÏÖJavaµ÷ÓÃFortran£¬½ñÌìÊÔÑéÁËһϣ¬»¹ÊDZȽÏÈÝÒ׵ġ£
ÍøÉÏÓÐÒ»¸öJavaµ÷ÓÃF95µÄÀý×Ó£¬µ«ÊÇÎÒ¿¼ÂDz»½öҪʵÏÖF95µÄµ÷Ó㬻¹ÒªÊµÏÖF77µÄµ÷Óã¬ËùÒÔ·ÑÁËһЩÖÜÕÛ¡£
ÎÊÌâµÄ¹Ø¼üÔÚÓÚF77Ϊ¹ý³ÌÃû×Ô¶¯Ìí¼ÓÁËÒ»¸öβ²¿µÄÏ»®Ïߣ¬ËùÒÔsub1Õâ¸ö¹ý³Ì£¬µ½JavaÒ»¶Ë£¬¾Í±ä³ÉÁËsub1_£¬ ......
java.util.RandomÀàÓÐÁ½ÖÖ·½Ê½¹¹½¨·½Ê½£º´øÖÖ×ӺͲ»´øÖÖ×Ó
1.²»´øÖÖ×Ó
package testjava01;
public class Random {
public static void main(String[] args) {
java.util.Random r = new java.util.Random();
for(i ......