2016-06-12 2 views
0

キャッシュサイズを設定したいと思います。私は@EnableCachingを使用しています。ここにキャッシュされたリポジトリがあります。スプリングブートキャッシュ可能キャッシュサイズ

VendorRepository

public interface VendorRepository extends Repository<Vendor, Long> { 

@Cacheable("vendorByUsername") 
Vendor getVendorByUsername(String username); 

@CacheEvict(value = {"vendorByUsername", "vendor", "vendors"}, allEntries = true) 
Vendor save(Vendor vendor); 

@Cacheable("vendor") 
Vendor findOne(Long id); 

@Cacheable("vendors") 
List<Vendor> findAll(); 
} 

それは今は良い取り組んでいるが、私は、最大キャッシュサイズを設定します。メインの設定ファイルでこれをどのように設定できますか?

+0

どのキャッシュ実装が使用しているかによって異なります。 spring caheは抽象レイヤーにすぎません – Jaiwo99

+0

私はどんな実装も使用しません。私はEhcacheを使用します。ありがとうございました。 – fatiherdem

答えて

1

@ Jaiwo99が正しい。

スプリングのキャッシュ抽象化は、特定のセマンティクスと、キャッシュの内容(サイズ、または同様の関連性のある、追い出し/期限切れなど)を「管理する」という「ローレベル」の詳細を処理しません。これは、これらの低レベルの管理の詳細が1つのキャッシュ・プロバイダから次のキャッシュ・プロバイダに大きく異なるために大部分が決定されます。

たとえば、キャッシングプロバイダ/実装の中には、一貫性、冗長性、遅延を制御するメカニズムなど、さまざまなポリシーを持つ、高度に分散されたものがあります。そのようなものとして、一部のプロバイダが上記の機能を実装していない、または非常に異なる「一貫性」ポリシーなどを持っているため、これらの機能の上に一貫した抽象化を提供することは非常に困難です。

とにかく、春のリファレンスガイドは、おそらく...それを最高の合計

http://docs.spring.io/spring/docs/current/spring-framework-reference/htmlsingle/#cache-specific-config

乾杯!

+0

ありがとう、ありがとう、私は私が見るように非常に使いやすいEhCacheを使用します。 – fatiherdem

関連する問題