GlassFish HTTP Compression

HTTP Compression nedir?

Http işlemleri bilindiği üzere text(yazı) formatlı olarak yapılır. Sıkıştırma algoritmalarının da en başarılı olduğu işlem text sıkıştırma işlemleridir. Bu yüzden http üzerinden bir dosya transferi işleminde 10 mb lık bir xml dosyasını 1 mb a kadar düşürüp, transfer hızını arttırıp bandwidth den de kazanım sağlayabilirsiniz. Fakat JPEG, AVI gibi sıkıştırılmış görüntü veya video, ses dosyalarını transfer edecekseniz HTTP compression işlemi size ek bir maliyet getirecektir. Sıkıştırılmış bir dosyanın tekrar sıkıştırılması boyutunu küçültmez, küçülme olmadığı gibi birde compress ve decompress algoritmaları devreye gireceği için yavaşlama olacaktır.

Şimdi GlassFish Server üzerinden yapılan Http işlemlerini sıkıştırıp network trafiğinden kazanmak için glassfish’in bize sunmuş olduğu ayarlara bakalım.

  1. GlassFish web yönetim arayüzünü açın http://localhost:4848
  2. Configuration->Server Configuration->Network Config->Network Listeners konumuna gidin
  3. Varsayılan olarak http-listener-1 adındaki listener ı tıklayın (Kendi server yapılandırmanızda farklı isim vermiş olabilirsiniz. İlgili listener ı açın.)
  4. HTTP sekmesinde Compression: on yapın.
    On: Sıkıştırma client isterse aktif.
    Off: Sıkıştırma kapalı.
    Force: Sıkıştırmaya zorlar, client istesede istemesede sıkıştırır.
  5. Compression Minimum Size: varsayılan 2048 Byte dır. Bu ayar sıkıştırma işlemi uygulanacak en küçük dosya boyutunu belirtir. 2 kb dan büyük dosyalara sıkıştırma işlemi uygulanacağı anlamındadır.

Php Hata Ayıklama

Merhaba arkadaşlar bu yazımda sizlere Php ile nasıl Debug işlemi yapabileceğinizi anlatacağım.

Öncelikle debug nedir bundan biraz bahsedeyim. Bug=böcek, debug= böcek temizleme anlamına gelir. Burada böcekten kasıt kodlama hataları sonucu oluşan sorunlardır. Yani debuging hata ayıklamak demektir. Bug kelimesinin nereden geldiğini detaylı olarak başka bir yazımda anlatabilirim.

Şimdi konumuza dönecek olursak. Php ile hata ayıklamak için “XDEBUG” denilen bir php eklentisi kullanılıyor. Bizde bu eklenti yardımı ile çoğu programlama dilinde olduğu gibi break point koyup adım adım kodları ilerleterek analiz etme, o anki değişken değerlerini görme, değişkenlerin değerlerini debug zamanında elle değiştirme gibi işlemler yapabiliriz. Tabi bu işlemler için birde IDE lazım 🙂 Ben Php Designer 8 e göre anlatımı yapacağım. Deneme sürümünü ve xDebug ı aşağıdan indirin.

Php Designer 8 indirip yükleyin.

XDebug‘ın bilgisayarınıza kurduğunuz php versiyonuna uygun olan versiyonunu indirin. (Not: Dosya isimlerinde TS geçenler Thread Safe anlamına geliyor.)

(Aşağıdaki işlemler Php dizini = “C:php”; Apache htdocs = “C:www”; olduğu varsayılarak anlatılacaktır.)

İndirdiğiniz dll dosyasını php dizini altındaki ext klasörü içersine atın. php.ini dosyasını açın ve alttaki tanımlamaları ekleyin.

[XDebug]

zend_extension=”C:phpextphp_xdebug-2.1.3-5.3-vc9-nts.dll”
xdebug.remote_enable = true
xdebug.remote_host = 127.0.0.1
xdebug.remote_port = 9000
xdebug.remote_handler = dbgp
xdebug.profiler_enable = 1
xdebug.profiler_output_name = cachegrind.out.%t.%p
xdebug.profiler_output_dir =”C:ProgramDataApplication DataphpDesignerXDebugCache”
xdebug.trace_output_dir = “C:/www/Temp/xdebug”

Php Desinerı açın.

Menüden, Tool–>Preferences–>Debuger içinde

PHP =”C:phpphp-cgi.exe”; Configuration = “C:phpphp.ini” olarak değiştirin. Aynı işlemi Syntax Check ve Run kısımları içinde yapın.

Localhost kısmına gelin ve Server Path e “http://localhost”, Local Server Path e “C:www” yazarak kayıt edin.

Php Designer içinde yeni bir web sayfası oluşturun. Bir takım php kodları yazın. Hata ayıklama işlemine başlamak istediğniz satıra gelerek F5 tuşu ile break point koyun. Daha sonra F9 tuşu ile sayfayı debug modda çalıştırın. Kodlar sunucu tarafında derlenirken break point olan satıra gelindiğinde IDE içersinde kesintiye uğratılarak sizin satır satır devam ettirmeniz beklenecektir. F8 tuşu ile sonraki satıra, F7 tuşu ile aktif satır içersinde kullanılmış fonksiyon varsa, içersine dallanabilirsiniz.

Apache HTTP Server ve Php Kurulumu

Merhaba arkadaşlar bu yazımda Php ile yazılım geliştirmek için gerekli araçların kurulumunu anlatacağım.

Malzeme Listesi 🙂

  1. Apache HTTP Server –> Stable Release no ssl versiyonunu indirin.
  2. PHP –> Thread Safe zip versiyonunu indirin.

1-Apache Http Server Kurulumu

windows installer paketini çalıştırın next diyerek geçin önünüze server information penceresi geldiğinde aşağıdaki gibi doldurun.

next, next… install diyerek kurulumu tamamlayın.

Apache test etmek için browser a “http://localhost” yazarak apachenin varsayılan test sayfasını görün. Eğer açılmıyor ise sisteminiz de IIS kurulu olabilir. IIS servisini durdurup tekrar deneyin.

“C:Program Files (x86)Apache Software FoundationApache2.2conf” klasörü altında httpd.conf dosyasını notepad ile açın.

“<Directory “C:/Program Files/Apache Group/Apache2/htdocs”>” ifadesini bulun ve o kısmı şu şekilde değiştirin. “<Directory “C:/www”>”. Bu işlem ile web sunucumuzun “C:www” klasörü altındaki dosyaları yayınlamasını sağlamış olduk.

2-Php Kurulumu

İndirilen zip arşivini “C:php” altına açın. “php.ini-development” isimli dosyayı yeniden adlandırarak “php.ini” yapın. Şimdi gelelim php.ini dosyasını yapılandırmaya. Php.ini yi notepad ile açın. Aşağıdaki satırları bulup değiştirin.

;extension=php_mysql.dll –> extension=php_mysql.dll
;extension=php_mysqli.dll –> extension=php_mysqli.dll

; extension_dir = “ext” –> extension_dir = “C:phpext”

doc_root = –> doc_root = “C:www”

php.ini yi kayıt edip kapatın.

3-Apache HTTP serverın php çalıştıracak şekilde ayarlanması

“C:Program Files (x86)Apache Software FoundationApache2.2conf” klasörü altında httpd.conf dosyasını notepad ile açın. ve içersine şu satırları ekleyin.

LoadModule php5_module “c:/php/php5apache2_2.dll”
AddType application/x-httpd-php .php
PHPIniDir “C:/php”

Not: Slash işaretleri “/” şekilde olacak yanlışlık var sanmayın.

Php ayarlamalarını test etmek için yeni bir php sayfası oluşturun ve içersine <?php phpinfo(); ?> yazıp kaydedin. Bu sayfayı “C:www” klasörüne atarak browserdan çalıştırın. Browser da php sürümünü gösteren bir sayfa görüyorsanız işlemleri doğru bir şekilde tamamlamışsınız demektir.

Delphi Xe2 ImageEn

Delphi Xe2 ye geçiş yapan uygulama geliştiriciler için başlangıçta bileşen(component) bulmak oldukça zor bir iş. Bunu delphi 6 den beri her yeni versiyona geçiş sırasında kendimden yola çıkarak biliyorum. Hali hazırda bulunan bir takım açık kaynak kodlu bileşenler yeni versiyon çıkar çıkmaz güncelleniyor ve pekte sıkıntı çıkmıyor geçiş işleminde. Ama ImageEn bileşeni Delphi Xe versiyonundan sonra ücretli hale getirildi. Bu yüzden artık yeni versiyonlarda bir bedel ödemeden güncelleştirme alamayacağız.

Bende bu zorluktan dolayı ImageEn 3.1.2 versiyonunu (en son yayınlanan açık kaynak kodlu versiyon) Delphi Xe2 de çalışacak şekilde düzenledim. Bileşenin çalışmasını engelleyecek yada farklı davranışlar sergileyecek değişiklikler yapmadım. Sadece yeni IDE ye kurulabilmesi için derleyici direktiflerine Xe2 nin versiyon numarasını ekledim.

Eğer sizde Xe2 için açık kaynak ImageEn versiyonu arıyorsanız, şuan doğru yerdesiniz demektir 🙂

Uyumlu olduğu Delphi versiyonları: 1, 2, 3, 4, 5, 6, 7, 8, 2006, 2007, 2009, 2010, Xe, Xe2

Kaynak kodları ve Demo uygulamaları ile birlikte indirmek için tıklayın.

Sadece kaynak kodları için tıklayın.

Delphi Xe, SubVersion 1.7 sürümüne yükseltmek

Delphi Xe ile birlikte entegre olarak gelen SubVersion sistemini yeni çıkan versiyonları ile güncelleştirmek için aşağıdaki adımları sırası ile uygulayacağız. Anlatım Delphi Xe2 ve SubVersion 1.7.2 ye göre yapılacaktır. Versiyon numaralarının pek bir önemi yok sadece dosya isimleri farklılık gösterebilir.

  • CollabNet Subversion Command-Line Client v1.7.2 (for Windows 32-bit) linkinden SubVersionu indirin. (Not: indirme işlemi için üyelik istiyor 🙁 )
  • CollabNetSubversion-client-1.7.2-1-Win32.exe’yi bilgisayarınıza kurun.
  • “C:Program Files (x86)EmbarcaderoRAD Studio9.0binsubversion” klasoru içersindeki dll dosyalarını “C:Program Files (x86)CollabNet” klasoru içersindeki aynı isimde olan dll dosyaları ile güncelleştirin.
  • Delphiyi kapatıp tekrar açın.
  • Delphi Xe2 Sub versiyon 1.7 için kullanıma hazır.

Basit bir işlem herkese kolay gelsin 🙂