eBA Garnet Kurulumu
Bu doküman eBA uygulamasında Garnet Cache Veri tabanının kurulumu ve çalışması için gerekli argümanları ve konfigürasyonları açıklamaktadır.
Önemli Uyarı
Garnet, Redis üzerinde yapılabilen Sentinel mimarisini desteklememektedir. Sentinel mimarisini kullananlar Linux makinalarda redis kullanmaya devam edebilirler.
Hazırlık
.NET 10 SDK Kurulumu
Garnet'ın kurulumuna başlamadan önce Garnet'ın source code'unu derleyebilmek için .NET 10 SDK'inin kurulması gereklidir. Aşağıdaki linkten bunu indirip kurabilirsiniz.
.NET 9 Runtime Kurulumu
Garnet'ın source code'u derlendikten sonra Garnet'ın .Net 9 Release'nin çalıştırılabilmesi için .NET 9 Runtime'inin kurulması gereklidir. Aşağıdaki linkten bunu indirip kurabilirsiniz.
Garnet Source Code'unun İndirilmesi ve Derlenmesi
Aşağıdaki GitHub linkinden Garnet'ın source code'u *.zip olarak indirilmelidir. İndirilen *.zip dosyası ayıklandıktan sonra ayıklanan klasör C:\garnet konumuna taşınmalıdır.

Taşıma işleminden sonra CMD üzerinden taşınan klasör içinde ki Garnet.slnx dosyasının bulunduğu konuma gelinir. Daha sonra aşağıdaki komut çalıştırılır ve Garnet'ın tüm bileşenlerinin derlenmesi sağlanır. Bu işlem 2-3 dakika sürebilir.
dotnet build -c Release
garnet.conf Dosyasının Hazırlanması
Redis tarafında redis.windows-service.conf adıyla bulunan, Garnet tarafında bu dosyayla aynı görevi yerine getiren garnet.conf dosyası bulunmaktadır. Bu dosya varsayılan olarak gelmez oluşturmamız gereklidir. İçeriği JSON formatındadır. Bu dosyayı aşağıdaki konumda yine aşağıdaki şekilde oluşturmak gereklidir.
C:\garnet\hosting\Windows\Garnet.worker\bin\Release\net9.0\garnet.conf
garnet.conf
{
"Port": 6380,
"Address": "127.0.0.1",
"AuthenticationMode": "Password",
"Password": "Şifre",
"EnableLua": true
}
Yukarıda garnet.conf dosyası içinde belirtilen ayarlar haricinde gerekli konfigürasyonlar lazım olması durumunda bu link üzerinden tüm konfigürasyon parametrelerine ulaşabilirsiniz.
Garnet.worker.exe'nin Windows Service Haline Getirilmesi
Derleme ve garnet.conf dosyasının hazırlanmasının ardından C:\garnet\hosting\Windows\Garnet.worker\bin\Release\net9.0 konumuna Garnet Worker'ının Release publish'i gelecektir. Bu klasör içinde ki Garnet.worker.exe aşağıdaki komut ile Windows Service'ı haline getirilir.
sc.exe create "Garnet Service" binPath= "C:\garnet\hosting\Windows\Garnet.worker\bin\Release\net9.0\Garnet.worker.exe --config-import-path C:\garnet\hosting\Windows\Garnet.worker\bin\Release\net9.0\garnet.conf"
Daha sonra Garnet Service adıyla oluşturulan bu Windows Service'i Servisler üzerinden başlatılır.

Bu aşamadan sonra Garnet makina üzerinde aktif bir şekilde çalışır hale getirilmiştir.
eBA ve Garnet Bağlantısı
eBAServerConfigurationEditor.exe kısmında daha önce redis ile nasıl bağlantı kuruyorsak aynı şekilde bağlantı kurulacaktır. Herhangi bir farklılık bulunmamaktadır.

Garnet FLUSHALL
Redis tarafında isteğe bağlı şekilde yada eBA servislerini yeniden başlatırken flush yapabilme mekanizması yine Garnet tarafında da bulunmaktadır.
Eğer isteğe bağlı şekilde Garnet FLUSHALL yapılacaksa aşağıdaki komutun kullanılması yeterlidir.
cd "C:\Program Files\Redis"
.\redis-cli.exe -h 127.0.0.1 -p 6380 -a Şifre FLUSHALL
Yada eBA Servisleri yeniden başlatılırken Garnet FLUSHALL yapılmak isteniyorsa direkt eBARestart.bat içeriğini aşağıdaki şekilde değiştirebilirsiniz.
net Stop eBAServer
timeout /t 2
net stop WAS /y
pause
"C:\Program Files\Redis\redis-cli.exe" -h 127.0.0.1 -p 6380 -a Şifre FLUSHALL
timeout /t 2
net Start eBAServer
timeout /t 2
net start w3svc