23.Mayıs.2011
Pazartesi
:: 17:45:41 |
|
Hani bazen, html kodlarken charset tanımlamayız(var mı hâla tanımlamayan?) veya olur da ne bileyim, charset tanımlamasının daha da üstünde kullanıcı tarafından değiştirilebilen bir şeyler bırakırız (title???). İşte o zaman, XSS (Cross site scripting) açıklarına maruz kalabilirmişiz az önce okudum, şaşırdım.
Tarayıcıların "otomatik dil seçimi", sayfa içinde bazı karakterler arayıp, o karakterleri belli karakter kodlamaları ile eşleştirmesiyle gerçekleşiyor. Yani, siz HTTP headerlarda veya meta charset ile karakter kodlaması belirtmezseniz, ve kodlarınızın içinde utf-8'e özel bir karakter varsa, tarayıcı tüm sayfayı utf-8 gibi yorumlayabilir.
Bu açık da bu davranışın kötü kullanılması ile oluşuyor aslında. Şöyle ki; Devamı
|
|
54199 kere okundu
[#]
|
27.Nisan.2011
Çarşamba
:: 07:01:53 |
|
Ek$igator an itibariyle, 11,070 kayıtlı üye tarafından 7,931 farklı başlığın takip edildiği ancak, son zamanlarda sözlüğe gereksiz istekler yapan, kimilerince pek sevilen bir sub-etha üyesi.
Gereksiz istekler yapma sorunu aslında, bir concurrency problemiydi. Aynı başlık, birden fazla kullanıcının takibindeyse, başlığın içeriğinin sözlükten alınması süresince (yaklaşık 3-4 saniye) gelen istekler tekrar sözlüğe iletiliyordu. Aslında burada yapılan ilk istekte veri alınmaya başlanmıştı, ama diğer isteklerin bu süreçten haberi yoktu. Bu hatadan dolayı da sözlük yöneticileri, ek$igator'ın sözlüğe erişimini geçici olarak engelledi.
Bu concurrency sorununu çözmek için de geçen sene hakkında bir belge yazdığım RabbitMQ implementasyonunu gerçekleştirdim.
Bu sayede, sözlükten içerik alma istekleri bir kuyruğa alınacak, bir python betiği de bu kuyruktaki işleri işleyip ilgili cache'leri oluşturacaktı. Bu tam şoparmene göre bir işti! ve http://github.com/yuxel/eksigator adresinde bu implementasyon hayat buldu.
Artık sözlüğe gereksiz istekler gitmeyecek ve eskiden senkron yapılan, kullanıcının takip ettiği başlıkları sözlükten fetch edip ekrana gösterme (her başlık için 3-4 saniye, 20 başlık varsa 1-2 dk!!!) işlemi, asenkron hale gelecek bu sayede maksimum bekleme süresi 10 saniyeye düşmüş olacaktı.
Bu da böyle bir anımdı.
|
|
63111 kere okundu
[#]
|
25.Mart.2011
Cuma
:: 20:56:45 |
|
Dün, geliştirmekte olduğumuz bir e-ticaret portalının önyüzünü kodlarken çok garip bir olayla karşılaştık.
Basitleştirilmiş olarak, aşağıdaki gibi bir senaryomuz vardı.
Devamı
|
|
57416 kere okundu
[#]
|
16.Mart.2011
Çarşamba
:: 20:53:02 |
|
Modajenik.com'u hazırlarken, HTTP 1.1 RFC 2616'daki " A single-user client SHOULD NOT maintain more than 2 connections with any server or proxy"den dolayı, CDN kullanma kararı aldık.
Resimler, http://img.modajenik.com, stil dosyalarını http://css.modajenik.com, JavaScript dosyalarını da http://js.modajenik.com'dan gelecek şekilde ayarlamıştık.
http://modajenik.com üzerinden yapılan isteklerde hiçbir sorun yoktu. Taa ki URL şeması, bazı sayfalarda (ödeme sayfası) https olarak değişene dek. Devamı
|
|
61983 kere okundu
[#]
|
05.Aralık.2010
Pazar
:: 05:03:18 |
|
Bugün, PHP Türkiye 2. toplantısını yaptı. Bu yazıyı ilgili sayfada yazacktım ama Facebook'un "1000 karakter sınırı" varmış. Yazı aşağıda:
Devamı
|
|
52905 kere okundu
[#]
|
15.Ağustos.2010
Pazar
:: 00:57:40 |
|
Gün olur, xdebug yüklü geliştirme ortamınızdaki, xdebug'ın o nacizane var_dump'ı çalışmaz, renklendirme flan yapmaz.
Böyle bir durumda php.ini'nizdeki html_errors değişkeninin On olarak ayarlandığına emin olun ki yarım saatinizi boşa harcamayın.
|
|
62269 kere okundu
[#]
|
04.Ağustos.2010
Çarşamba
:: 18:02:21 |
|
Pazar günü, saat 14:00'de Cevahir AVM'deki City Brasserie'de, dilim döndüğünce Friendfeed'in kullandığı web araçlarını (nam-ı diğer Tornado) anlatmaya çalışacağım. Çaya da beklerim efem.
http://www.pyist.net/meetings.html#agustos-2010
|
|
52979 kere okundu
[#]
|
02.Temmuz.2010
Cuma
:: 16:21:32 |
|
Zend Framework'e Smarty entegrasyonu belgesini ekledim
|
|
60009 kere okundu
[#]
|
08.Mayıs.2010
Cumartesi
:: 15:32:12 |
|
Python'u pek sevdim, thread'lere biraz bakayım derken, Apache Benchmark çakması bir uygulama çıkardım.
1 saatte yazılmış olup türlü buglar içerebilir. http://github.com/yuxel/pywbt adresindeki pywbt betiğini alıp çılgınlar gibi kullanabilirsiniz.
İki parametre ve bir de http:// web adresi argümanı alıyor. Parametreler -n (istek sayısı), -c (anlık istek sayısı). Detay için python pywbt.py --help, örnek kod için ise aşağısı
python pywbt.py -n 100 -c 30 http://yuxel.net
> Requests between 0 and 30 sent
> Requests between 30 and 60 sent
> Requests between 60 and 90 sent
> Requests between 90 and 100 sent
-------------------------------------------------
Process took 9.61535310745 seconds
( 0.0961535310745 per/request)
Number of succeeded requests 100
Number of failed requests 0
|
|
53976 kere okundu
[#]
|
07.Nisan.2010
Çarşamba
:: 16:46:36 |
|
Evet evet, Ek$igator artık Ekşisözlük Sub-etha servisleri arasındaki yerini aldı. Yiyin gari :)
|
|
61307 kere okundu
[#]
|
18.Mart.2010
Perşembe
:: 11:52:06 |
|
2 senedir kafamda kurduğum senaryo için benim yapamayacağım bazı işler vardı. Özgün grafikler, 3d flash oyunlar vs.
Bunun için ödenek istedim ismi lazım olmayan bir firmadan. "Bir prototip görelim" dediler, "Peki" dedim. Oturdum 3 hafta sürede prototipi bitirip incelemeleri için ilgili kişiye gönderdim.
Yarım saatlerini ayırıp "olur"/"olmaz" diyecekleri bir iş için tam bir hafta sonra "Ekibinizde bir grafiker yok, bir flash'cı yok, planı da çok iyi yapmamışsınız boşluklar var " diyerek projeyi geri çevirdiler.
Bu süre zarfında oyunun en can alıcı noktası olan "oyun motoru"nu incelememeleri, zaten bir grafiker/flash'cı bulamadığımız için ödenek istediğimizi belirttiğimiz halde "grafikeriniz yok" diyerek projeyi geri çevirmeleri, üstelik bu yarım saatlik işi bir haftaya sığdırdıkları için kendilerine teşekkürü borç bilirim.
|
|
54277 kere okundu
[#]
|
13.Mart.2010
Cumartesi
:: 01:53:29 |
|
Belgeler bölümüne Thrift Kurulumu belgesi ekledim. Yiyin gari...
|
|
60303 kere okundu
[#]
|
23.Ocak.2010
Cumartesi
:: 00:25:34 |
|
Bmw mi Mercedes mi? Barça mı Real mi? Nike mı Adidas mı? Sahibinden mi Gittigidiyor mu?
Ana sayfa yüklenme hızında Sahibinden, Gittigidiyor'dan neredeyse 5 kat daha hızlı :)
debian:~# time GET gittigidiyor.com > /dev/null
real 0m1.675s
user 0m0.168s
sys 0m0.016s
debian:~# time GET sahibinden.com > /dev/null
real 0m0.334s
user 0m0.180s
sys 0m0.012s
|
|
54358 kere okundu
[#]
|
12.Ocak.2010
Salı
:: 19:57:54 |
|
Ek$igator kendi sayfasına kavuştu. Halka açık oldu. Opera eklentisi vardı, bir de firefox eklentisi oldu. Yiyin gari.
www.eksigator.com
|
|
56772 kere okundu
[#]
|
|
|
Takvim |
|
|
< Kasım 2024 > |
P | S | Ç | P | C | Ct | Pz |
| | | | 1 | 2 | 3 |
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 |
|
|
|
|
|
|