Bir yazılım firması olarak reformo web tabanlı ve mobil yazılım geliştirmeye konsantre olmuştur. Geliştirilen
uygulamaların görsel ve görsel iletişim tasarımını kendi alanlarında uzman çözüm ortakları ile
gerçekleştirmektedir.
Herkese merhaba, ben Mehmet Korkmaz, Reformo’nun Direktörü ve Ana Uygulama Geliştiricisiyim. 2012′nin ilk yarısında neler yaptık, neler yaşadık kısaca anlatmaya çalışacağım. İşte çok yoğun ve zorlu geçen bu süreçte altından kalkmaya çalıştığımız birbirinden farklı projeler:
Eğitim Alanı
HGM | reformo olarak Ankara Üniversitesi Fen Bilimleri Enstitüsü’nün var olan Öğrenci İşleri Bilgi Sistemi’nin modernizasyonu projesini bir süredir yürütüyorduk. Enstitü merkezinin Gölbaşı Kampüsü’ne taşınmasıyla Enstitü Öğrenci İşleri süreçlerindeki bazı işlemlerin online yapılacak şekilde sağlanması gerek öğrenciler, gerek Öğretim Üyeleri için kaçınılmaz oldu. Biz de bu konuda kendilerine yardımcı olmaya çalıştık.
API
Sosyal Medya
modPlatform2
modPlatform Reformo tarafından geliştirilmiş bir “agile” uygulama geliştirme framework’üdür. Bu sene içinde geçmişte bir çok projede kullandığımız modPlatform’da köklü değişikliker yaparak versiyon 2′yi yayınladık. İşte bu değişiklikler:
TL;DR Türkçe
Çok çalıştık, çok yorulduk : )
TL;DR English
We have done lots of staffs, we are tired but happy in the end.
TL;DR English
TL;DR Türkçe
İlk Bakışta MemSQL
Yüksek performans beklenen veritabanı uygulamalarının en büyük maliyeti veritabanına yapılan sorgulardır. Özellikle veri girişinin de yoğun olduğu ve anlık sorgu miktarının çok olduğu durumlarda veritabanının performansı gerçekten kritik bir hal alıyor. Bu durumu bertaraf etmek için kullanılan çeşitli yöntemlerden biri de caching. Daha önce sorgulanmış bir talebi tekrar veritabanına sormadan cevaplayabilmek uygulamanın performansına yönelik yazılımsal anlamda büyük fayda sağlamaktadır. Çeşitli caching stratejileri var tabi: Talep oldukça ya da önceden kestirelebilecek tüm istekleri daha uygulama içinden talep edilmeden önce cache’lemek gibi.
MemSQL de işte bu tip durumdaki uygulamalar göz önünde bulundurularak geliştirilmiş ve MySQL ile aynı söz dizilimini kullanan ve aynı bağlantı adaptörlerini kullanan bir veritabanı. RAM’i kullandığı için diskten okuma maliyetini otomatikmen ortadan kaldırdığından sorguların cevap süreleri inanılmaz azalıyor. Maalesef MySQL’in tüm özellikleri MemSQL’e aktarılmış değil. Mesela bir çok uygulama için kısıtlayıcı olacak olan ikiden fazla tabloyu birbirine bağlayarak veri çekmek henüz MemSQL’de mümkün değil.
MemSQL’in kurulumu basit. GNU/Linux’ta gerekli geliştirme paketleri yüklü olduğu ve sistem RAM miktarı en az 8GB olduğu sürece bir sıkıntı yaşanmıyor.
Denemelerimi 103 Tablo ve toplamda 771 MB yer kaplayan bir CMS veritabanı ile yaptım. MySQL’den MemSQL’e datayı Navicat ile aktardım. Aktarım sırasında ufak tefek sıkıntılar olduysa da sorun çıkaracak hatalar ile karşılaşmadım. Aktarım sonrasında Navicat tablo isimlerini her ne kadar listeleyemese de komut satırından mysql komutu vasıtasıyla bağlandığımda hiç bir sıkıntı yaşamadım. Uygulamayı MemSQL ile çalışmasını sağlamak için uygulamanın, php_mysqli kullanıyor, MySQL konfigürasyon kısmındaki bağlantı bilgilerini değiştirerek yapmam yeterli oldu. Yukarıda da bahsettiğim ikiden fazla tabloyu birbirine bağlayarak veri çekme noktası dışındaki kısımlar gayet düzgün çalıştı. Sunuyu kontrol ettiğimde gördüğüm kadarıyla MemSQL her bir tablo ve her bir ayrı tip query için kendi cache klasöründe tablo ismiyle oluşturduğu başka bir klasör içinde bir shared object kütüphanesi oluşturuyor. Bu kütüphanelerin header ve c kaynak kodlarını da ilgili klasörde bulup incelemek mümkün.
Sonuç olarak MemSQL takip edilmesi gereken bir proje ve bir çok uygulamanın olmazsa olmaz temel ihtiyaçlarını karşıladığı noktadan itibaren de vazgeçilmez olacaktır diye düşünüyorum.
Kaynak ve ilgili siteler