wsgi mi python web server mı ?

1,536 views
Skip to first unread message

Batuhan Göksu

unread,
Mar 21, 2013, 7:17:41 AM3/21/13
to python-...@googlegroups.com
arkadaşlar hep kafam karışmıştır bu konuda python ile kodlanmış tornado gunicorn gibi web sunucularımı daha iyidir yüksek trafikli ve veri girişi olan bir site için yoksa apache mod_wsgi ile mi geliştirmek daha uygun olacaktır görüşlerinizi almak istiyorum arkadaşlar.

Yetkin Öztürk

unread,
Mar 21, 2013, 7:19:18 AM3/21/13
to python-...@googlegroups.com
amacina gore, mimarine gore degisir bazi yerlerde uwsgi kraldir bazi yerlerde apache en guvenilir seydir. 



21 Mart 2013 13:17 tarihinde Batuhan Göksu <batuha...@gmail.com> yazdı:
arkadaşlar hep kafam karışmıştır bu konuda python ile kodlanmış tornado gunicorn gibi web sunucularımı daha iyidir yüksek trafikli ve veri girişi olan bir site için yoksa apache mod_wsgi ile mi geliştirmek daha uygun olacaktır görüşlerinizi almak istiyorum arkadaşlar.

--
Bu e-postayı Google Grupları'ndaki "Python Istanbul" adlı gruba abone olduğunuz için aldınız.
Bu grubun aboneliğinden çıkmak ve bu gruptan artık e-posta almamak için python-istanb...@googlegroups.com adresine e-posta gönderin.
Daha fazla seçenek için, https://groups.google.com/groups/opt_out adresiniz ziyaret edin.
 
 

Batuhan Göksu

unread,
Mar 21, 2013, 7:24:51 AM3/21/13
to python-...@googlegroups.com
uwsgi den kastınız nedir acaba ? mesala şuanda geliştirmek için kolları sıvadığımız projemiz var booking.com viator.com karışımı bir proje size göre hangisi uygun gider apache için zaten mod_wsgi den başka cgi var oda artık tarih oldu tornadı gunicorn filan iyi diyorlar yada alternatifleri varmıdır ?

Zekeriya KOÇ

unread,
Mar 21, 2013, 7:30:02 AM3/21/13
to python-...@googlegroups.com
uWSGI bir WSGI sunucusu. aslında mod_wsgi dediğimiz de bir WSGI sunucusu. apache modülü şeklinde çalışıyor. WSGI bir şey WSGI sunucular başka bir şey.

ben şahsen en küçüğünden en baba ölçekleme sorunları olan sistemlere kadar uWSGI yeterli olacağı kanısındayım. yapılandırma seçenekleri çok farklı şekillere deployment yapmaya müsaade ediyor. 


21 Mart 2013 13:24 tarihinde Batuhan Göksu <batuha...@gmail.com> yazdı:



--
Zekeriya "zekUs" KOÇ - http://zekzekus.com/

Yetkin Öztürk

unread,
Mar 21, 2013, 7:35:04 AM3/21/13
to python-...@googlegroups.com
suradan bilgi alabilirsiniz


bence Tornado uWSGI tarzi sunuculari web servisler icin kullanmak daha mantikli tek monolitik yapida  bir proje mi dusunuyorsunuz bilmiyorum...

benim dedigim pahada agir islevsel olarak kucuk seyleri(cok hizli degisen uygulamayi zenginlestiren ek ozellikler) web servis olarak C++'da node.js'de scala veya go ile yazma gibi bi trend var  python dunyasinda da ben sahsen uWSGI, Tornada veya gevent ile bir servis yazardim ama applicationimi sadece bunlar uzerine kurmazdim. Bunu demek istedim.








21 Mart 2013 13:24 tarihinde Batuhan Göksu <batuha...@gmail.com> yazdı:

Batuhan Göksu

unread,
Mar 21, 2013, 7:37:23 AM3/21/13
to python-...@googlegroups.com
peki uwsgi nasıl kullanılıyor yapılandırılıyor sanırım sitesindeki tabloya en 100% stabil olarak python üzerinde çalışıyor ama kurulum yapılandırma ve python projesini onun üzerinde geliştirme konusunda ne yapabilirim ??

Zekeriya KOÇ

unread,
Mar 21, 2013, 7:44:03 AM3/21/13
to python-...@googlegroups.com
İngilizce çok yoğun kaynak bulabilirsiniz. Deployment konusunda. 


21 Mart 2013 13:37 tarihinde Batuhan Göksu <batuha...@gmail.com> yazdı:

Zekeriya KOÇ

unread,
Mar 21, 2013, 7:45:45 AM3/21/13
to python-...@googlegroups.com
Bu arada ben de uygulamayı üzerine inşa etmeyi kastetmiyorum. Zaten tornado ile uwsgi asla karşılaştırılamaz bence. WSGI konuşmayı bilen uygulamanızı istediğiniz gibi geliştirirsiniz (ki artık modern her framework böyle). Sonrasında deploy edeceğiniz zaman, gunicorn, uwsgi, mod_wsgi vs. gibi seçeneklerden birini seçersiniz diye düşünüyorum.


21 Mart 2013 13:35 tarihinde Yetkin Öztürk <yetk...@gmail.com> yazdı:



--

Batuhan Göksu

unread,
Mar 21, 2013, 7:51:13 AM3/21/13
to python-...@googlegroups.com
yok üzerinde inşaa etmeyi yanlış kullandım yani php den gelen biriyim o yüzden python ile web uygulaması geliştirdiğimde bunu çalıştırmak için hangisi uygun ne yol izlemeliyim diye öğrenmek istiyorum django türü framework kullanmayacam python ile geliştirilen uygulamayı çalıştırma yayınlamak için bir sürü şey söyleniyor ama hangisi dogru veya uygun kafam karıştı bu konuda

Zekeriya KOÇ

unread,
Mar 21, 2013, 7:58:51 AM3/21/13
to python-...@googlegroups.com
Django kullanıp kullanmamak önemli değil. Sonuçta python ile yazacağınız uygulama WSGI compatible olmalı. Bu şekilde olduğu zaman uygulamanız ile web sunucunuz arasına bir WSGI sunucusu koyup uygulamanızı sunabiliyorsunuz. 


21 Mart 2013 13:51 tarihinde Batuhan Göksu <batuha...@gmail.com> yazdı:
Message has been deleted

Batuhan Göksu

unread,
Mar 21, 2013, 8:59:22 AM3/21/13
to python-...@googlegroups.com
anladım bu wsgi sunucusu apache mod_wsgi yada uwsgi de olabilir diyorsunuz uwsgi örnekleri varmıdır acaba bilginiz ?

Zekeriya KOÇ

unread,
Mar 21, 2013, 9:33:53 AM3/21/13
to python-...@googlegroups.com
Ben php dünyasından gelip python ile web geliştirmeye yeni başlayanlar için bir süre görmezden gelinebileceğini düşünüyorum işin WSGI kısmının. Mevcut web frameworkleri, micro-frameworkleri incelemenizi öneririm. İş bir noktada WSGI sunucu seçmeye geldiğinde zaten ekosistem ile alaklı tecrübeniz de artmış olur. 

Yani size gösterebileceğim, özellikle python web geliştirme konusunda temel fayda sağlayacak bir uWSGI örneği yok diye düşünüyorum. Yine de güzel bir mikro framework olan flask'ın wsgi sayfasını verebilirim[1].



21 Mart 2013 14:59 tarihinde Batuhan Göksu <batuha...@gmail.com> yazdı:
anladım bu wsgi sunucusu apache mod_wsgi yada uwsgi de olabilir diyorsunuz uwsgi örnekleri varmıdır acaba bilginiz ?

--
Bu e-postayı Google Grupları'ndaki "Python Istanbul" adlı gruba abone olduğunuz için aldınız.
Bu grubun aboneliğinden çıkmak ve bu gruptan artık e-posta almamak için python-istanb...@googlegroups.com adresine e-posta gönderin.
Daha fazla seçenek için, https://groups.google.com/groups/opt_out adresiniz ziyaret edin.
 
 

Batuhan Göksu

unread,
Mar 21, 2013, 10:05:49 AM3/21/13
to python-...@googlegroups.com
yani hiç framework kullanmıcam değil ama django gibi çok büyük frameworkleri sevemiyorum php de zend filan var mikroframe filan tabiki kullanıcam kullanmam lazım sanırım cünkü python fileupload post verileri almak için filan oturup kendimiz yazmamız gerekiyor böyle durumda mikro-framework kullanmak akıllıca tabiki ama wsgi tam olarak nedir acılımı nedir tam bilemedim öğrenmek istiyorum acıkcası mesala django ile yaptıgın uygulamayı önizleme için kendi http serverı içinde yerleşik geliyor ama yüklü trafik ve büyük bir proje geliştirdiyseniz yerleşik http server işinizi çözmez o yüzden wsgi kullanın deniliyor yada mod_python okey güzel peki tornado var mesala hem kendi içinde framework ü var hemde yüksek trafikli bir site için python ile yazılmış bir web sunucusu ve anlık binlerce veri işleyebiliyor ama bu wsgi değil tamamen kendi yapısı dogrumu

emre yılmaz

unread,
Mar 21, 2013, 10:18:11 AM3/21/13
to python-...@googlegroups.com
wsgi nedir öğrenmek istiyorsan google'da wsgi yazman yeterliydi: http://wsgi.readthedocs.org/en/latest/

wsgi, bir standart. web sunucuları ile web uygulamalarının iletişime geçmesi için daha önceden pep333 oluşturulmuş kurallar bütünü. (http://www.python.org/dev/peps/pep-0333/) sunucular bu kurallar bütününü uygular, uygulamayla ona göre iletişime geçer.

wsgi -> protokol
uwsgi -> sunucu
gunicorn -> sunucu
mod_wsgi -> apache'nin wsgi protokolunu anlayıp, yorumlayabilmesini sağlayan eklentisi, modu.

yazdığın düz python uygulaması wsgi protokolüne uygun yazılırsa wsgi protokolunu destekleyen sunucular ile çalıştırabilirsin.

tornado'ya gelirsek tornado muhtemelen sana göre değil, tornado'nun performansı non-blocking olmasından ileri geliyor, tornado ile çalışacak tüm kodların da tamamen non-blocking olmalı. hatta çok güzel bir mantık hatası olarak tornado'nun içindeki database wrapper'ı blocking'tir. "aa tornado çok hızlıymış" diye tornado üstüne proje geliştirilmez. tornado'nun neyi iyi yaptığı, nasıl çalıştığı, nerelerde kullanılmalı, nasıl kullanılmalı gibi şeyleri araştırmak lazım.

bi zamanında oldlukça büyük bir facebook uygulamasının sadece *realtime chat* kısmını tornado ile yazmıştık örneğin. (gerçi o zamanlar node.js bu kadar mainstream değildi, kötü zamanlarmış.) kalan kısımlar php idi. genelde de bu şekilde kullanılıyor non-blocking sunucular. ihtiyaçlara göre projenin belirli parçalarında tornado kullanabilirsin sen de bu şekilde. tüm sistemi non-blocking yazmak gibi bir fanteziye gireceksen o ayrı iş.







21 Mart 2013 16:05 tarihinde Batuhan Göksu <batuha...@gmail.com> yazdı:
yani hiç framework kullanmıcam değil ama django gibi çok büyük frameworkleri sevemiyorum php de zend filan var mikroframe filan tabiki kullanıcam kullanmam lazım sanırım cünkü python fileupload post verileri almak için filan oturup kendimiz yazmamız gerekiyor böyle durumda mikro-framework kullanmak akıllıca tabiki ama wsgi tam olarak nedir acılımı nedir tam bilemedim öğrenmek istiyorum acıkcası mesala django ile yaptıgın uygulamayı önizleme için kendi http serverı içinde yerleşik geliyor ama yüklü trafik ve büyük bir proje geliştirdiyseniz yerleşik http server işinizi çözmez o yüzden wsgi kullanın deniliyor yada mod_python okey güzel peki tornado var mesala hem kendi içinde framework ü var hemde yüksek trafikli bir site için python ile yazılmış bir web sunucusu ve anlık binlerce veri işleyebiliyor ama bu wsgi değil tamamen kendi yapısı dogrumu

--
Bu e-postayı Google Grupları'ndaki "Python Istanbul" adlı gruba abone olduğunuz için aldınız.
Bu grubun aboneliğinden çıkmak ve bu gruptan artık e-posta almamak için python-istanb...@googlegroups.com adresine e-posta gönderin.
Daha fazla seçenek için, https://groups.google.com/groups/opt_out adresiniz ziyaret edin.
 
 



--
web developer
http://www.emreyilmaz.me

emre yılmaz

unread,
Mar 21, 2013, 10:24:02 AM3/21/13
to python-...@googlegroups.com


21 Mart 2013 16:18 tarihinde emre yılmaz <ma...@emreyilmaz.me> yazdı:

okey güzel peki tornado var mesala hem kendi içinde framework ü var hemde yüksek trafikli bir site için python ile yazılmış bir web sunucusu ve anlık binlerce veri işleyebiliyor ama bu wsgi değil tamamen kendi yapısı dogrumu


wsgi protokolü synchronous bir protokoldür. dolayısıyla async çalışan tornado bunu desteklemiyor. destekleyen bir adapter'ı var: https://github.com/facebook/tornado/blob/master/tornado/wsgi.py

ama bu şekilde kullanınca async operasyonlar desteklenmiyor.

Yetkin Öztürk

unread,
Mar 21, 2013, 10:29:19 AM3/21/13
to python-...@googlegroups.com
@Emre database konusunda async desteklemeyen sey  psycopg2 driveri  sadece posgresde o da malum....

async destekleyen diger driverlar mevcut postgreste, mysqlde ve diger veritabanlarinda da... tabi tercih meselesi 



21 Mart 2013 16:18 tarihinde emre yılmaz <ma...@emreyilmaz.me> yazdı:
wsgi nedir öğrenmek istiyorsan google'da wsgi yazman yeterliydi: http://wsgi.readthedocs.org/en/latest/
Message has been deleted

emre yılmaz

unread,
Mar 21, 2013, 10:31:42 AM3/21/13
to python-...@googlegroups.com



21 Mart 2013 16:29 tarihinde Yetkin Öztürk <yetk...@gmail.com> yazdı:

@Emre database konusunda async desteklemeyen sey  psycopg2 driveri  sadece posgresde o da malum....

async destekleyen diger driverlar mevcut postgreste, mysqlde ve diger veritabanlarinda da... tabi tercih meselesi 



tornado'nun içindeki mysql wrapper'ından bahsediyordum. ayrı olarak async driverlar var tabii ki.

(hoş şimdi baktım, yeni versiyonlarında yok, eski branchlardan buldum.)


 

Batuhan Göksu

unread,
Mar 21, 2013, 10:34:51 AM3/21/13
to python-...@googlegroups.com
@emre yılmaz 

anladım teşekkür ederim wsgi python ile web uygulama geliştirmek için protokol standartı (evet haklısınız tornado chat tarzı bir iş yapmayacağım için gereği yok)
peki apache-wsgi mi tercihiniz olurdu uwsgi gunicorn mu yada başka alternatifleri neler var.

emre yılmaz

unread,
Mar 21, 2013, 10:40:49 AM3/21/13
to python-...@googlegroups.com

21 Mart 2013 16:34 tarihinde Batuhan Göksu <batuha...@gmail.com> yazdı:



anladım teşekkür ederim wsgi python ile web uygulama geliştirmek için protokol standartı (evet haklısınız tornado chat tarzı bir iş yapmayacağım için gereği yok)
peki apache-wsgi mi tercihiniz olurdu uwsgi gunicorn mu yada başka alternatifleri neler var.



basit ve etkili olduğu için genelde nginx/gunicorn ikilisini tercih ediyorum. statik dosyaların sunulma işini saymazsak (burada apache kullanmak hata olur), performans işi genelde uygulama mimarisinde bittiğinden hangisini kullanırsan kullan muhtemelen pek bir performans farkı yaşamayacaksın. çok yüksek trafikleri mod_wsgi/apache2 ikilisiyle de hallettiğimiz oldu. 

afilli birkaç benchmark bulup seçimini yap. apache kocaman bir şey olduğundan, apache'ye herhangi bir bağımlığının yoksa  benim tavsiyem nginx/gunicorn ya da nginx/uwsgi olur.
 

Yetkin Öztürk

unread,
Mar 21, 2013, 10:42:29 AM3/21/13
to python-...@googlegroups.com
Emre tornado 2.0deki database driveri hakikaten ibretlikmis onu gormemistim... 


21 Mart 2013 16:40 tarihinde emre yılmaz <ma...@emreyilmaz.me> yazdı:
--

Zekeriya KOÇ

unread,
Mar 21, 2013, 10:53:21 AM3/21/13
to python-...@googlegroups.com
Daha önce söylediğimi tekrar ediyorum. Yeni başlıyorsan şu anda dert etmen gereken bir konu değil kesinlikle. Hakim olman gereken bir sürü başka yabancı konsept bulacaksın python web geliştirme dünyasında. Konsantrasyonunu onlara yoğunlaştırmanı öneririm. Bir büyüğün dediği  "premature optimization is the root of alla evil" lafı senin durumuna denk geliyor bence. 


21 Mart 2013 16:42 tarihinde Yetkin Öztürk <yetk...@gmail.com> yazdı:
Message has been deleted

Batuhan Göksu

unread,
Mar 21, 2013, 11:00:21 AM3/21/13
to python-...@googlegroups.com
haklısınız teşekkür ederim ama php de alışkanlık burda biraz farklılaşınca araştırmak istedim php de apache mod_php kur çalıştır yeterliydi o yüzden kafama takıldıkca hep araştırır sorarım bugün bu yarın başka bir şey :)

peki python ile web geliştirme konusunda önerileriniz varmıdır acaba ??

Zekeriya KOÇ

unread,
Mar 21, 2013, 11:04:18 AM3/21/13
to python-...@googlegroups.com
Tek ve en verimli kaynak. Buradan okuyacakların yanında vızıltı kalır :) 





21 Mart 2013 17:00 tarihinde Batuhan Göksu <batuha...@gmail.com> yazdı:
haklısınız teşekkür ederim ama php de alışkanlık burda biraz farklılaşınca araştırmak istedim php de apache mod_php kur çalıştır yeterliydi o yüzden kafama takıldıkca hep araştırır sorarım bugün bu yarın başka bir şey :)

peki python ile web geliştirme konusunda önerileriniz varmıdır acaba ??



Daha önce söylediğimi tekrar ediyorum. Yeni başlıyorsan şu anda dert etmen gereken bir konu değil kesinlikle. Hakim olman gereken bir sürü başka yabancı konsept bulacaksın python web geliştirme dünyasında. Konsantrasyonunu onlara yoğunlaştırmanı öneririm. Bir büyüğün dediği  "premature optimization is the root of alla evil" lafı senin durumuna denk geliyor bence. 


--
Bu e-postayı Google Grupları'ndaki "Python Istanbul" adlı gruba abone olduğunuz için aldınız.
Bu grubun aboneliğinden çıkmak ve bu gruptan artık e-posta almamak için python-istanb...@googlegroups.com adresine e-posta gönderin.
Daha fazla seçenek için, https://groups.google.com/groups/opt_out adresiniz ziyaret edin.
 
 

Mehmet Kose

unread,
Mar 21, 2013, 12:33:40 PM3/21/13
to python-...@googlegroups.com
Python ile bu yaz ilgilenmeye başladım. app engine üzerinde çalışmaya çalışırken karşılaşmıştım wsgı ile, araştırdım ama pek birşey anlamamıştım. şu an ben de tornado ile uygulama yazıyorum, wsgı nedir hala bilmiyorum, pek de gerekmiyor açıkcası. kendi portlarında tornadoyu çalıştırıyorum, nginx ile proxy_pass ediyorum portlara.

Ben de php'den gelen biriyim, python,torado,nginx,mongodb dörtlüsüne biraber dalınca çok kafam karışmıştı. eğer işinize yarayacaksa şu sununun 6.sayfasındaki şemaya bir göz atabilirsiniz; http://www.slideshare.net/FlyingOttoman/tornado-nginxsunu

tam olarak cevapmıydı emin de değilim, değilse kusura bakmayın artık :)


21 Mart 2013 13:58 tarihinde Zekeriya KOÇ <zekz...@gmail.com> yazdı:

Batuhan Göksu

unread,
Mar 21, 2013, 1:12:12 PM3/21/13
to python-...@googlegroups.com
teşekkür ederim bunuda notlarıma altım tornado güzel ama anlık veri işleme türü yoksa yani chat gibi şeyler ozaman tornado ya gerek varmıdır ki ? peki şuanda tornado ile geliştirdiğiniz web uygulamasının yoğunluk değeri nedir ?


21 Mart 2013 18:33 tarihinde Mehmet Kose <mehmet...@gmail.com> yazdı:

Mehmet Kose

unread,
Mar 21, 2013, 4:07:56 PM3/21/13
to python-...@googlegroups.com
Hayır sadece realtime işler için gerekli olduğunu söylemek haksızlık olur. yerelleştirme,tema motoru,oturum işlemleri vs güzel çözümler sunuyor. zaten rework'ten beri pek karmaşık uygulamalar geliştiren biri değilim bu yüzden basit araçlar oluşturmaya çalışıyorum.

gelistirdiğim uygulama ise son 3 yıldır yerinde sayıyordu yani su an pek trafik almıyor ama 80k sayfam var. ilk yaptığım işlerden birisi statik dosyaları tornado ile değil, amazon s3'e atıp oradan yayınlamak oldu. çünkü nihayetinde tornado da bir server olduğu için gelen istek sayısını azaltmak istedim. ikinci olarak da nginx worker sayısını artırdım. şimdi mysql dbyi mongodbye aktarma hazırlığındayım. ama dediğim gibi çok ciddi trafik alan bir sitem yok, eğer olursa uygulamayı farklı sunuculara paylaştırmak çok kolay.

tornado ile birkaç basit uygulama geliştirdiyseniz (klasör içindeki örnek uygulamaları kurcalayarak) benim tavsiyem bret taylor'un cookbook'unu iyice incelemeniz. blog yazıları,cookbook kodu ve sosyal ağlardaki paylaşımları incelerseniz adamın tarzını ve friendfeed kodunu göz önüne getirmeniz pek de zor değil.

21 Mart 2013 19:12 tarihinde Batuhan Göksu <batuha...@gmail.com> yazdı:

Batuhan Göksu

unread,
Mar 22, 2013, 4:38:15 AM3/22/13
to python-...@googlegroups.com
anladım çok teşekkür ederim incelemelerime başladım peki siz olsanız booking.com gibi bir site için nasıl bir yapı kurardınız fikrinizi almak isterim.


21 Mart 2013 22:07 tarihinde Mehmet Kose <mehmet...@gmail.com> yazdı:

Fatih ERİKLİ

unread,
Mar 22, 2013, 5:33:36 AM3/22/13
to python-...@googlegroups.com
Soru biraz ilginç olmuş. Booking.com'a sadece bir site gözüyle bakmamak gerekiyor. Orada büyük bir oganizasyon söz konusu. Tek bir instance ile çalıştığını zannetmiyorum.


2013/3/22 Batuhan Göksu <batuha...@gmail.com>



--
Fatih ERİKLİ

Batuhan Göksu

unread,
Mar 22, 2013, 5:37:20 AM3/22/13
to python-...@googlegroups.com
sonuçta ilk yapıldıgı zaman normal bir e-ticaret tarzında bir şey di neticede


22 Mart 2013 11:33 tarihinde Fatih ERİKLİ <fatih...@gmail.com> yazdı:

Zekeriya KOÇ

unread,
Mar 22, 2013, 5:37:25 AM3/22/13
to python-...@googlegroups.com

Katılıyorum. Bu tip büyük yapılarda genelde tek bir teknoloji ile geliştirildi demek bile zor. En düz örnek facebook. Bugün facebook sitesini neyle yazmışlar desen bunu tek bir cevabı yok. İşin içine bir sürü yapı, teknoloji, araç ve bunlarına arasındaki entegrasyon vs. de girmiş oluyor.

22 Mart 2013 11:33 tarihinde Fatih ERİKLİ <fatih...@gmail.com> yazdı:
Soru biraz ilginç olmuş. Booking.com'a sadece bir site gözüyle bakmamak gerekiyor. Orada büyük bir oganizasyon söz konusu. Tek bir instance ile çalıştığını zannetmiyorum.

Batuhan Göksu

unread,
Mar 22, 2013, 5:41:17 AM3/22/13
to python-...@googlegroups.com
haklısınız booking.com ve viator.com karışımı bir projemiz var php ile yapmak yerine python ile yapmayı düşünüyoruz nedeni ileride sistemsel veya web taraflı her türlü aracı python ile geliştirmek münkün php ile yapabilirdik ama site büyüdükce python gibi dillerede ihtiyacımız olacak bazı araçları geliştirmek için bizde bu yüzden python ile başlayıp gerekirse aracı araçlarıda python ile geliştirmek daha dogru olacagını düşünüyoruz sizce ?


22 Mart 2013 11:37 tarihinde Zekeriya KOÇ <zekz...@gmail.com> yazdı:

Mehmet Kose

unread,
Mar 22, 2013, 3:23:37 PM3/22/13
to python-...@googlegroups.com
Python doğru tercih. proje büyüdükçe denildiği gibi birçok dil ile projenin birçok ayağını geliştirmek zorunda kalabilirdiniz, ama bunların hepsini python ile yazmak mümkün. bu noktada belki tavsiye edecek konumda değilim zira bir gaz ile çok projeye başlayıp bırakmışlığım var, ama öğrendiğim şey şu; hangi dili biliyorsanız onunla başlayın. über hızlarda öğrenme ve uygulama kapasiteniz yoksa, veya vaktiniz çok değilse, ya da bu işe hobi olarak bakmıyorsanız.

erken ama uygulamayı sunucu üzerinde kurarken şu yazı vps üzerine kurulum yardımcı olabilir, zamanı gelince kullanırsınız.

22 Mart 2013 11:41 tarihinde Batuhan Göksu <batuha...@gmail.com> yazdı:

Batuhan Göksu

unread,
Mar 23, 2013, 5:15:31 AM3/23/13
to python-...@googlegroups.com
şimdi 5 aylık gibi bir zamanımız ofisimizi tutuk filan her şeyim hazır php ile yapacaktım oturdum ileriyi düşündüm nicola testa gibi kafamda kurdum her şeyi çalışıtrdım filan :) php fazlasıyla yeterdi ama madem yeni iş yeni hayat diye başlıyorum ozaman hep merak ettigim python nu öğrenmek ve ileriye dönük olarak projemi python üzerinde geliştirmek istiyorum bir çok sebepleri vardı

linux içerisinde yerleşik gelen bir dil
kütüphanelerini python içerisine yükleyip istediginiz gibi cagırabiliyorsunuz böylelikle php deki gibi bir klasör içinde bir sürü dosya ile kafanız karışmıyor kurarım modullerımı pythona çekerim onları genişletir istedigim gibi kullanırım hep hayalimdeki programlama dili gibiydi :D python çekirdeğin çok sade basit olması buna yüklenen modullerle genişlemesi cezbediyordu php de herşey içinde geliyor kullanmadıgım kullanmayacagım çok şey var eskiyenlerde cabası python da fazlaysa kaldır o modulu :) ve sadece web dili değil bir programlama dili öğrenmek istiyordum iyice öğrenip ileride kendi httpsunucumu yazmak veya var olanları dahada geliştirmek gibi fantazilere rahatlıkla girebilirim :) ee tabiki ileriye dönük düşünüyorsak hergün kan kaybeden bir dili ve sadece web ile sınırlı kalan dili neden tercih edeyim diye düşündüm

php apache artık tek çözüm gibi klasikleşmiş oldu python da sınır yok istersen otur kendi httpsunucun üzerinde geliştir herşeyini yada ne bilim başka şeyler bazen aklıma bir fikir geliyor ama sırf php nin buna yetersiz kalmasından yapmadıgım oluyor o yüzden artık durumum ve şartlarım python öğrenmeye itiyordu beni bir gazla radikal kararla python öğrenmek ve projemi onunla geliştirmeye karar verdim

en güzel öğrenme yolu birşey geliştirirken oluyor belki proje yeni dili ögrenirken geliştirmek çok ucuk gelebilir ama ben php yi öğrenmeye başladıgımda phpbb gibi forumu kendim yazıcam diye başladım ki sene 2006 larda

yani durum mu mehmet köse blogunuzdaki yazınızı okudum neden python'a geçtim işte bu yüzden geçtim :D

ayrıca mükemmeliyetçi yapım her zaman kaçınılmaz oluyor benim için :) 

22 Mart 2013 Cuma 21:23:37 UTC+2 tarihinde Mehmet Kose yazdı:

Alper Kanat

unread,
Mar 24, 2013, 7:57:53 PM3/24/13
to python-...@googlegroups.com
Merhaba Batuhan,

Python'u merak etmen, bir şeyleri öğrenme çaban takdire şayan. Ancak şu anda yaptığın işi baltaladığını da çok net söyleyebilirim. Projeyi bir yere kurmak ve sunucu mimarisi, hele ki o teknolojilerde yeniysen, düşünülmesi gereken son şeydir. Zekeriya bu konuda birebir benim düşündüklerimi yazmış yukarıda.

Python öğrenmek ve projeni Python ile geliştirmek istiyorsan her şeyden önce Python'un kendisini ve projeni yazabileceğin bir çatıyı (framework) öğrenmelisin. En hızlı ve kolay öğrenebileceğin; belgelendirmesi de en iyi olan çatı tartışmasız django. django'nun belgelendirmesini "sırayla" okursan, seni çok basit bir projeyi yazmayla başlatıp sunucu mimarisini kurmaya (deployment) kadar götürdüğünü göreceksin zaten. Bu noktada sırayla gitmen ve sabırlı olman projenin seyri açısından hayati öneme sahip.

Kısaca; eğer projen için bir yol haritası çizmek istiyorsan, sana yardımcı olayım:
  • Geliştirme ortamı hazırlanması
  • Proje iskeletinin (dizin yapısı, modüller, modeller vs..) ortaya çıkarılması
  • Modellerin yazılması
  • Temanın yazılması
  • Modellerle temaların birleştirilmesi = view katmanının yazılması
  • İlk sürümü olabilecek en basit sunucu yapılandırmasıyla kurmak (ör: LAMP)
  • İş büyümeye başlayınca farklı sunucu mimarilerini düşünmek (linux, nginx, uwsgi, mysql, memcache, mongodb, redis vs..)
Tornado gibi şeylere hiç girmemekte fayda var. Öyle bir ihtiyacın olacaksa da node.js'e bakmakta fayda olur ama kafanı karıştırmamak için detaya girmek istemem.

---
Quis custodiet ipsos custodes?

Batuhan Göksu

unread,
Mar 25, 2013, 4:57:39 AM3/25/13
to python-...@googlegroups.com
Merhaba Alper,

çok teşekkür ederim dediğiniz gibi her şeyin başı sabırdır bende aynen sizin gibi bir harita çizdim şuanda python üzerinde dökümanları ve elimdeki kitapları okuyarak ögreniyorum sonra framework yapılarını inceleyip uygun olanı öğrenicem ancak son 2 madde benim haritamda şöyle 

ilk olarak beklediğimiz trafik büyük olacak çünkü site yayına girmesi ile anlaşılan oteller yapılan reklamların dönüşü beklediğimiz gibi olursa basit bir sunucu yapılandırması bizi yarı yolda bırakır ilk yola çıkarken tıkanmalar kapanmalar olursa şayet bu bizi lekeler o yüzden varsın 1 tane ziyaretçi gelsin en kötü ihtimalle ama aksi olursa hazırlıklı olmak istiyorum web konusunda sunucu yapılandırma konusunda tecrübelerim var yıllardır php ile projeler geliştirdim ama artık yoluma python ile devam edeceğim.


25 Mart 2013 01:57 tarihinde Alper Kanat <tu...@raptiye.org> yazdı:

--
Bu e-postayı Google Grupları'ndaki "Python Istanbul" adlı gruba abone olduğunuz için aldınız.
Reply all
Reply to author
Forward
0 new messages