All streams
Search
Write a publication
Pull to refresh
0
0
Send message
вертикальные бд нужны для быстрого доступа к таблицам, в которых мало INSERT и много SELECT. я прав? к примеру для хранения названия города и его координаты, оч удобно наверное. Но как же быть с остальными? тем более для быстрой выборки на сколько я знаю при сложных запросах можно использовать к примеру OLAP, пространственную бд. О каком закате эры реляциооных бд может быть после 2D транспанирования? согласен с multic
оч удобная штука. вчера передавал заказчику via skype апликуху размером в 24 Мбт — мы ждали 14 минут). с данным сервисом те же операции заняли существенно меньше по времени — аплоад 78 сек, скачивание 38 при том же коннекте, более чем в 7 раз быстрее)
за совет спасибо, след статейка будет с этим тегом)
import org.springmodules.cache.CachingModel;

public class EhCacheCachingModel implements CachingModel {...}
вы привели пример JSR107 JCACHE реализации open-source ehcache модуля от Terracota. в вашем примере используется кеширование POJO. Смысл этого всего в том что кешировать можно объекты любого неординарного типа и существует довольно таки много настроек для Ehcache, реализованных via Spring as IoC container, только и всего
    Среди прочих библиотек есть ehcache.sourceforge.net/
    Легко встраивается в Spring IoC Container через установку Ehcache manager.
    Конфигурится через ehcache.xml (максимальное число элементов в памяти, максимальное число элементов на диске, путь куда сохранять, время жизни, частота обновления — основные атрибуты).
    <encache...>
      <defaultCache .../>
      <cache name=«engroupCache»...>
      
    
    В Spring context добавляется 2 бина, первый это менеджер кеша, но не org.springmodules.cache.provider.jsr107.Jsr107CacheManagerFactoryBean а org.springframework.cache.ehcache.EhCacheManagerFactoryBean, где configLocation атрибут равен classpath:ehcache.xml, а второй это cacheProviderFacade, класса org.springmodules.cache.provider.ehcache.EhCacheFacade (где name=cacheManager ref=cacheManager).

@RunWith(EngroupClassRunner.class)
@ContextConfiguration(locations = { "/META-INF/spring/cache-context.xml" })
public class CacheTest {
    @Autowired
    protected CacheProviderFacade cacheProviderFacade;

    @Test
    public void testCacheConfiguration() {
        Assert.assertNotNull(cacheProviderFacade);

        EhCacheCachingModel model = new EhCacheCachingModel();
        model.setCacheName("engroupCache");

        cacheProviderFacade.putInCache("a", model, new Integer(1));
        Integer fromCache = (Integer) cacheProviderFacade.getFromCache("a",
                model);
        Assert.assertEquals(new Integer(1), fromCache);
    }
}


https://springmodules.dev.java.net/. — 10 минут для общего развития


Spring context:
<bean id="cacheManager"
 class="org.springframework.cache.ehcache.EhCacheManagerFactoryBean">
 <property name="configLocation">
  <value>classpath:ehcache.xml</value>
 </property>
</bean>

<pre lang=«xml» xml:space=«preserve» xml:lang=«xml»>
<bean id=«cacheProviderFacade»
class=«org.springmodules.cache.provider.ehcache.EhCacheFacade»>
/>



encache.xml
<?xml version="1.0" encoding="UTF-8"?>

<ehcache xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 xsi:noNamespaceSchemaLocation="ehcache.xsd">

 <diskStore path="java.io.tmpdir" />

 <defaultCache maxElementsInMemory="10000" eternal="false"
  timeToIdleSeconds="120" timeToLiveSeconds="120" overflowToDisk="true"
  diskSpoolBufferSizeMB="30" maxElementsOnDisk="10000000"
  diskPersistent="false" diskExpiryThreadIntervalSeconds="120"
  memoryStoreEvictionPolicy="LRU" />
 
 <cache name="engroupCache" maxElementsInMemory="10000"
  maxElementsOnDisk="10000000" eternal="false" overflowToDisk="true"
  diskSpoolBufferSizeMB="20" timeToIdleSeconds="300"
  timeToLiveSeconds="600" memoryStoreEvictionPolicy="LFU" />
</ehcache>


12 ...
10

Information

Rating
Does not participate
Location
Forest Hills, New York, США
Date of birth
Registered
Activity