.NET 플랫폼의 Memcached 클라이언트 소개(Memcached Providers)

3485 단어 memcached
아침에 리눅스 서버의Memcached 업데이트 작업에 대한 성능 테스트를 받아야 하는 임무를 받았는데 나는 전형적인'손에 망치를 들고 모든 문제를 못으로 삼는 사람'이라는 것을 알게 되었다.나의 첫 번째 생각은 바로 Memcached 공식 홈페이지에서 찾는 것이다.NET 클라이언트마지막으로 Codeplex에서 Memcached Providers라는 클라이언트 프로그램을 찾았어요. 아주 작아요. 218K에 3개의 DLL이 있어요. 하나는 Memcached Providers 자체의 DLL이고 하나는 Enyim이에요.Caching, Enyim.Caching도 하나예요.NET 플랫폼의Memcached 클라이언트, 마지막으로 유명한 log4net입니다.
Memcached Providers의 설정은 매우 편리합니다. 우선.NET 프로젝트에서 상술한 3개의 DLL 파일을 인용한 다음에 프로젝트의 설정 파일을 수정해야 하고 데스크톱 프로그램이라면 APP를 수정해야 한다.CONFIG, WEB 프로그램이면 WEB를 수정합니다.CONFIG.먼저 configSections 노드에서 다음 구성을 추가합니다.
 
<section name="cacheProvider" type="MemcachedProviders.Cache.CacheProviderSection, MemcachedProviders"
allowDefinition="MachineToApplication" restartOnExternalChanges="true"/>
<sectionGroup name="enyim.com">
<section name="memcached" type="Enyim.Caching.Configuration.MemcachedClientSection, Enyim.Caching" />
</sectionGroup>
<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler,log4net"/>

 
그런 다음 configuration 노드 아래에 Enyim 구성 노드를 추가합니다.
 
<enyim.com>
<memcached>
<servers>
<!-- put your own server(s) here-->
<add address="10.60.0.105" port="19191" />
</servers>
<socketPool minPoolSize="10" maxPoolSize="100" connectionTimeout="00:00:10" deadTimeout="00:02:00" />
</memcached>
</enyim.com>

 
마지막으로 configuration 노드 아래에 Log4net 구성 노드를 추가합니다.
 
<log4net>
<appender name="ConsoleAppender" type="log4net.Appender.ConsoleAppender">
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date [%thread] %-5level %logger [%property{NDC}]- %message%newline" />
</layout>
</appender>
<root>
<priority value="WARN"/>
<appender-ref ref="ConsoleAppender">
<filter type="log4net.Filter.LevelRangeFilter">
<levelMin value="WARN"/>
<levelMax value="FATAL"/>
</filter>
</appender-ref>
</root>
</log4net>

 
마지막으로 간단한 테스트를 해보겠습니다.
 
TestMethod]
public void TestMethod1()
{
string key = "mykey";
string value = "Success!!!";
DistCache.Add(key, value); //
Thread.Sleep(500);
string ret = (string)DistCache.Get(key); //
Assert.AreEqual(value, ret); //
}

 
전체 과정이 비교적 순조롭고 기본적으로 문제에 부딪히지 않았으며 이 모든 준비가 끝난 후에 테스트에 들어갈 수 있다.PHP, JAVA, Python 등 프로그램 언어의 Memcached 클라이언트는 비교적 많은데.NET 플랫폼의 클라이언트는 2, 3개밖에 없어요.NET 프로그램에서 Memcached를 사용하면 Memcached Providers도 좋은 선택입니다.

좋은 웹페이지 즐겨찾기