- 23 Eyl 2016
- 2,001
- 11
[COLOR="WhiteSanic, Flask'e benzer bir syntaxı olan ama Flask'ten 6 kat daha hızlı olan asenkron bir web frameworküdür. Sanic kullanmak için yeni asenkron syntaxından dolayı Python 3.5 veya üstü bir Python sürümüne ihtiyacınız vardır.
Konuya başlamadan benchmark sonuçları ile Sanic'in ne kadar hızlı olduğunu göstermek istiyorum:
[CENTER][IMG]https://kek.gg/i/6Qx8-G.png[/IMG][/CENTER]
Evet, benchmark sonuçlarını gördüğümüze göre bir "Hello World!" örneği ile başlayalım.
[code][font=monospace][color=#AA22FF][b]from[/b][/color] [color=#0000FF][b]sanic[/b][/color] [color=#AA22FF][b]import[/b][/color] Sanic, response [color=#008800][i]#Gerekli importları yapalım[/i][/color]
app [color=#666666]=[/color] Sanic() [color=#008800][i]#App adındaki Sanic nesnemizi oluşturalım[/i][/color]
[color=#AA22FF]@app[/color][color=#666666].[/color]route([color=#BB4444]'/'[/color]) [color=#008800][i]#route dekoratörü ile kodumuza giden URL'yi belirtelim[/i][/color]
[color=#AA22FF][b]async[/b][/color] [color=#AA22FF][b]def[/b][/color] [color=#00A000]hello[/color](request):
[color=#AA22FF][b]return[/b][/color] response[color=#666666].[/color]text([color=#BB4444]'Hello World!'[/color]) [color=#008800][i]#response.text biçiminde (yani düz metin) verimizi döndürelim[/i][/color]
[color=#AA22FF][b]if[/b][/color] [color=#B8860B]__name__[/color] [color=#666666]==[/color] [color=#BB4444]'__main__'[/color]:
app[color=#666666].[/color]run(host[color=#666666]=[/color][color=#BB4444]'127.0.0.1'[/color], port[color=#666666]=[/color][color=#666666]8000[/color]) [color=#008800][i]#Uygulamayı 127.0.0.1 adresinde (yani localhostumuzda) 8000 portu üzerinde başlatalım.[/i][/color]
[/font][/code]
Kodumuzu çalıştırıp [url]http://127.0.0.1:8000/[/url] adresine gidersek bizi bir "Hello World!" yazısının karşıladığını görebiliriz. Gördüğünüz gibi aynı Flask kullanır gibi Sanic'i de kullanabiliyoruz. Bu yüzden daha önce Flask kullandıysanız hiç zorluk çekmeyeceksiniz. Tek fark, Sanic'te response türünü belirtmemiz gerekmesi ve fonksiyonumuzu async yapmamız.
[SIZE="3 [URL="https://tik.lat/0iE3r"] tıklayın[/URL].
[SIZE="3
Konuya başlamadan benchmark sonuçları ile Sanic'in ne kadar hızlı olduğunu göstermek istiyorum:
[CENTER][IMG]https://kek.gg/i/6Qx8-G.png[/IMG][/CENTER]
Evet, benchmark sonuçlarını gördüğümüze göre bir "Hello World!" örneği ile başlayalım.
[code][font=monospace][color=#AA22FF][b]from[/b][/color] [color=#0000FF][b]sanic[/b][/color] [color=#AA22FF][b]import[/b][/color] Sanic, response [color=#008800][i]#Gerekli importları yapalım[/i][/color]
app [color=#666666]=[/color] Sanic() [color=#008800][i]#App adındaki Sanic nesnemizi oluşturalım[/i][/color]
[color=#AA22FF]@app[/color][color=#666666].[/color]route([color=#BB4444]'/'[/color]) [color=#008800][i]#route dekoratörü ile kodumuza giden URL'yi belirtelim[/i][/color]
[color=#AA22FF][b]async[/b][/color] [color=#AA22FF][b]def[/b][/color] [color=#00A000]hello[/color](request):
[color=#AA22FF][b]return[/b][/color] response[color=#666666].[/color]text([color=#BB4444]'Hello World!'[/color]) [color=#008800][i]#response.text biçiminde (yani düz metin) verimizi döndürelim[/i][/color]
[color=#AA22FF][b]if[/b][/color] [color=#B8860B]__name__[/color] [color=#666666]==[/color] [color=#BB4444]'__main__'[/color]:
app[color=#666666].[/color]run(host[color=#666666]=[/color][color=#BB4444]'127.0.0.1'[/color], port[color=#666666]=[/color][color=#666666]8000[/color]) [color=#008800][i]#Uygulamayı 127.0.0.1 adresinde (yani localhostumuzda) 8000 portu üzerinde başlatalım.[/i][/color]
[/font][/code]
Kodumuzu çalıştırıp [url]http://127.0.0.1:8000/[/url] adresine gidersek bizi bir "Hello World!" yazısının karşıladığını görebiliriz. Gördüğünüz gibi aynı Flask kullanır gibi Sanic'i de kullanabiliyoruz. Bu yüzden daha önce Flask kullandıysanız hiç zorluk çekmeyeceksiniz. Tek fark, Sanic'te response türünü belirtmemiz gerekmesi ve fonksiyonumuzu async yapmamız.
[SIZE="3 [URL="https://tik.lat/0iE3r"] tıklayın[/URL].
[SIZE="3