Tornado

Yazılım ekran görüntüsü:
Tornado
Yazılım detaylar:
Versiyon: 4.3 Güncelenir
Qayıt: 10 Dec 15
Geliştirici: Facebook
Lisans: Ücretsiz
Popülerlik: 9

Rating: 3.0/5 (Total Votes: 2)

Başlangıçta Facebook PHP ve MySQL kullanılarak inşa edildi, ancak trafik ve artan ağ boyutu, yani gerçek zamanlı içerik daha iyi ve hızlı teslimat için gereksinimleri yaptı.

Bu PHP dışındaki diğer teknolojiler ve dillere dalmak Facebook ekibi açtı ve şirket yakında Python, kendi arama motorunu oluşturmak için Google tarafından kullanılan bir programlama dili o manzaraları döndü.

ekibinin çabaları Tornado, özellikle basit bir asenkron engellenmeyen bir şekilde ham HTTP bağlantıları ile çalışmak üzere tasarlanmış bir Python çerçeve denilen bir ürün haline sonuçlandı.

Tornado Web.py ve Google'ın webapp gibi diğer araçlar esinlenerek, ama aynı zamanda da ekstra özellikler içerir edildi.

Tüm çerçevenin merkezi vb i18n içeriği, dize manipülasyon, çıkış nesil, asenkron operasyonlar, üçüncü taraf kod, günlükleri ile başa çıkmak için bir modül paketi tarafından geliştirilmiş ve güçlü bir HTTP sunucusu, bulunduğu anda.

Ayrıca, Cassandra, Tornado bugüne kadar Facebook'un en başarılı açık kaynak kodlu uygulamaların biridir.

Bu sürümdeki yeni nedir :

  • Yeni modülleri: tornado.locks ve tornado.queues

sürüm 4.2 yeni Nedir:

  • Yeni modülleri: tornado.locks ve tornado.queues

nedir sürüm 4.1 Yeni

  • tornado.web.stream_request_body dekoratör büyük dosyaları olmasını sağlar sınırlı bellek kullanımı ile yükledi.
  • Eşyordamlar artık daha hızlı ve Tornado kendisi boyunca yoğun olarak kullanılmaktadır. Daha yöntemler şimdi en iostream yöntemleri ve RequestHandler.flush dahil, Futures dönün.
  • Birçok kullanıcı geçersiz yöntemleri artık akış kontrolü için Geleceği dönmek için izin verilir.
  • HTTP ile ilgili kod şimdi böyle yığın halinde ve gzip kodlaması daha tutarlı gibi özellikler için destek verme, tornado.httpserver, tornado.simple_httpclient ve tornado.wsgi modülleri arasında paylaşılır. HTTPServer şimdi eski tek geri arabirimine ek olarak tornado.httputil tanımlanan yeni delege arabirimleri kullanır.

  • IPv6 engellenmeyen DNS, SSL tokalaşma ve desteği ile TCP bağlantılarını oluşturur tornado.tcpclient
  • Yeni modül.

sürümünde 3.2.2 yeni Nedir:

  • XSRF belirteci artık rastgele bir maske ile kodlanmış Her istek üzerine. Bu güvenli İHLALİ saldırıya karşı savunmasız olmadan sıkıştırılmış sayfalarda dahil kolaylaştırır. Bu (bir vekil tarafından uygulanan gzip veya var) xsrf_cookies ve gzip seçenekleri hem kullanımı çoğu uygulama için de geçerlidir.

  • Tornado 3.2.2 aynı etki alanında eski sürümleri aynı anda çalıştırırsanız
  • farklı çerez sürümleri ile ilgili sorunlar için bazı potansiyel var. Uygulama ayarı xsrf_cookie_version = 1 yeni sunucularda eski çerez biçimini oluşturmak için bir geçiş dönemi için de kullanılabilir.
  • tornado.platform.asyncio şimdi Trollius sürümü 0.3 ile uyumludur.

sürümünde 3.2.1 Yeni Ne:

  • imzalı değer biçimi RequestHandler.set_secure_cookie tarafından kullanılan ve RequestHandler.get_secure_cookie daha güvenli olması için değişti. Bu yıkıcı bir değişikliktir. Secure_cookie fonksiyonları çerez formatları arasında geçişler desteklemek için yeni sürüm parametreleri alır.
  • Yeni çerez biçimi, bir çerez adı başka adının bir önek birden fazla tanımlama kullanan uygulamalarda mevcut olabilecek bir güvenlik açığını giderir.
  • süreleri dolana kadar kesintileri en aza indirmek için, eski formatta çerezleri varsayılan olarak kabul edilecektir. = 2 RequestHandler.get_secure_cookie için min_version geçirerek eski formatta tüm çerezleri reddedebilir savunmasız olabilir Uygulamaları.

sürüm 3.2 yeni nedir

  • Yeni uygulama default_handler_class ayarı kolayca özel kurmak için kullanılabilir 404 sayfa.
  • Yeni uygulama ayarları Autoreload, compiled_template_cache, static_hash_cache ve serve_traceback hata ayıklama modunda bireysel yönlerini kontrol etmek için kullanılabilir.
  • Yeni yöntemler RequestHandler.get_query_argument ve RequestHandler.get_body_argument ve yeni özellikler HTTPRequest.query_arguments ve HTTPRequest.body_arguments istek vücuttan olanlar ile sorgu dizesi gelenler karışmasının olmadan argümanlar erişime izin verir.

  • argüman çözümlenmiş olamazdı zaman
  • RequestHandler.decode_argument ve ilgili yöntemler yerine artık UnicodeDecodeError bir httpError (400) kaldırın.
  • RequestHandler.clear_all_cookies şimdi sadece clear_cookie gibi, etki ve yol argümanları kabul eder.
  • Bu URLSpec sınıfını kullanırken adına göre eylemcileri belirlemek artık mümkün.
  • Uygulama şimdi (daha önce yerine başlığın bir URLSpec nesnesi inşa gerekli) adı parametresini belirtmek için 4-dizilerini kabul eder.
  • işleyici yöntemleri Yoktur veya Geleceği dışında bir değer döndüğünüzde yanlış hata mesajı düzeltildi.

  • asynchronous ve @ gen.coroutine hem kullanırken
  • İstisnalar artık iki kez kaydedilir.

nedir sürüm 3.1 Yeni

  • Birçok referans döngüleri paketine boyunca kırık olan, izin CPython üzerinde daha etkili çöp toplama işlemi için.
  • bağlantıları açıldığında bazı günlük iletileri Susturuldu ve derhal kapatılmalı (yani liman taramaları), ya da kapalı bağlantıları ile ilgili diğer durumlar.
  • Çeşitli küçük speedups: HTTPHeaders vaka normalleşme, UIModule vekil nesneler, bazı Regexes derleme
  • .

nedir sürümü 3.0.2 Yeni

  • sürüm 1.1 tornado.auth.TwitterMixin şimdi varsayılan Twitter konuşurken 11 Haziran'da durdurulan ediliyor yerine 1.0 sürümü Twitter API, Ayrıca artık HTTPS kullanır.
  • gen.coroutine veya gen.engine fonksiyonları uzun bir zincir ile potansiyel bir bellek sızıntısı giderildi.

3.0 sürümü yeni Nedir:

Birçok asenkron yöntemlere `` callback`` argümanı

  • olan şimdi isteğe bağlı ve bu yöntemler, bir '.Future` döndürür. `Tornado.gen` modülü, Futures``` `anlar ve bu yöntemler, bir '.gen.Task` ambalaj malzemesi olmadan doğrudan kullanılabilir.

  • aksine (geçerli iş parçacığı üzerinde çalıştığı `.IOLoop` döner .IOLoop.current`
  • Yeni işlev` belirli bir parçacığının (genellikle ana parçacığının) IOLoop döndürür `.IOLoop.instance` için.
  • Yeni sınıf `tornado.netutil.Resolver` DNS çözümlemesi için bir asenkron bir arayüz sağlar.

  • `Çocuğun dosya tanımlayıcıları için .PipeIOStream` erişim` ile subprocess.Popen` sarar tornado.process.Subprocess`
  • Yeni sınıf `.
  • `.IOLoop` artık statik` yapılandırmak & # x3c vardır; .Configurable.configure & # x3e; dışında bir `.IOLoop` uygulaması seçmek için kullanılabilir` `.AsyncHTTPClient` üzerinde gibi yöntem, Varsayılan. * `.IOLoop` Artık opsiyonel eğer monoton saatini kullanabilirsiniz.

sürümünde 2.4.1 yeni nedir

tornado.stack_context Sabit bir bellek sızıntısı
    • oldu Uzun koşu @ gen.engine fonksiyonları ile özellikle muhtemel.

    • tornado.auth.TwitterMixin şimdi Python 3 çalışır.
    • Sabit bir hata olduğu zaman yerine akarsu geri arama nihai geri arama veri son öbek geçerdi bir akış geri arama ile IOStream.read_until_close.

    sürüm 2.4 yeni Nedir:

    • tornado.auth Sabit Python 3 böcek, tornado.locale ve tornado.wsgi.
    • OAuthMixin şimdi kabul & quot; oob & quot; Bir callback_uri olarak.
    • OpenIDMixin şimdi de kullanıcı için claimed_id alanını verir.
    • tornado.platform.twisted kapatma sırası şimdi daha uyumludur.
    • tornado.options kullanılan günlük yapılandırması şimdi ASCII olmayan bayt dizeleri daha hoşgörülü olduğunu.

    sürüm 2.3 yeni Nedir:

    • `tornado.httpclient.HTTPClient` şimdi aynı yapıcısı destekler AsyncHTTPClient`.
    • `da kelime argümanlar
    • AsyncHTTPClient.configure` `` için max_clients`` kelime argüman şimdi çalışıyor.
    • `tornado.simple_httpclient` şimdi` `OPTIONS`` ve` `PATCH`` HTTP yöntemleri.
    • destekler
    • `tornado.simple_httpclient` çöp toplama işlemi için onları bırakmak yerine kendi yuva kapanış konusunda daha iyidir.
    • `tornado.simple_httpclient` doğru (Bu hata Python 2.5 ve 2.6 etkilenen) IPv6 harfleri içeren URL'ler için SSL sertifikaları doğrular.
    • `tornado.simple_httpclient` artık bu kimlik bilgileri URL'den ayıklanır` Host`` başlığındaki temel kimlik doğrulama kimlik içerir.
    • `tornado.simple_httpclient` artık yönlendirmeleri takip ederken sorunlara neden arayan sağlanan başlık sözlüğü, değiştirir.
    • `tornado.curl_httpclient` şimdi tornado.simple_httpclient`` aynı `` client_cert`` ve `` client_key`` argümanları kullanarak (istemci SSL sertifikaları destekler.

    sürümünde 2.2.1 yeni Nedir:

    • Güvenlik giderir:
    • `tornado.web.RequestHandler.set_header` artık düzgün (her zaman bunu yapmak için çalıştı, ancak onay yanlış) başlık enjeksiyonu, tepki bölme, vb karşı korumak için giriş değerleri temizler. Yönlendirmeleri gibi hataların en olası kaynağı Not RequestHandler.redirect` `ayrı bir çekle korunmaktadır.
    • Hata düzeltmeleri:
    • tornado.options` `in renkli günlüğü yapılandırma Python 3.2.3 (ve 3.3) ile uyumludur.

    sürüm 2.2 yeni nedir.

    • Güncelleme ve genişletilmiş WebSocket desteği

    • Twisted / Tornado köprü
    • Geliştirilmiş uyumluluk.
    • Şablon hataları şimdi daha iyi yığın izleri oluşturur.

    • tornado.gen` `in ele
    • Daha istisna.

    sürümünde 2.1.1 yeni Nedir:

    • Hata düzeltmeleri:
    • `` epoll`` (yani Linux) `` IOLoop`` ile kapatılır bağlantıları Sabit taşıma. Daha önce, kapalı bağlantıları çoğunlukla & quot tecelli, hangi çok erken kapatılması olabilir; Akış kapalı & quot edilir; SimpleAsyncHTTPClient``.
    • `` istisnalar
    • bir olgu olan kesilmiş çıkış lider, tepkiler zamanından önce kapalı olabilir yığın halinde düzeltildi.
    • `` IOStream.connect`` şimdi günlüğü ve yakın geri arama (bu FreeBSD üzerinde localhost örneğin bağlantıları etkiler) üzerinden daha tutarlı hataları bildirir.
    • `` IOStream.read_bytes`` yine `` int`` ve `` long`` argümanları hem kabul eder.
    • `` PeriodicCallback`` artık IOLoop`` tekrarlamalar time.time () `` (Windows ağırlıklı bir sorun) `` çözünürlüğü daha hızlı tamamladığınızda `` art arda çalışır.

    nedir sürümü 2.1.0 Yeni

    • DigiNotar varsayılan CA sertifikaları dosyadan kaldırıldı SimpleAsyncHTTPClient` `tarafından kullanılan
    • Bazı gelişmiş çoklu işlem senaryoları, `` HTTPServer`` yeni bir yöntem `` add_sockets`` ve soket açma kodu vardır tornado.netutil.bind_sockets` `ayrı ayrı kullanılabilir kolaylaştırmak için.
    • Tornado öncesi 1.0 bültenleri tarafından yazılmış güvenli kurabiye desteği kaldırıldı.
    • Windows desteği iyileştirilmiştir.

    sürümünde 2.0.0 yeni Nedir:

    • Büyük değişiklikler:
    • Şablon çıkışı otomatik olarak varsayılan kaçtı.
    • Varsayılan AsyncHTTPClient uygulaması artık simple_httpclient edilir.
    • Python 3.2 artık destekleniyor.
    • Geriye dönük uyumluluk:
    • Şablon autoescaping varsayılan olarak etkindir. Tornado önceki sürümünden Uygulamalar yükseltme gerekir ya devre dışı autoescaping veya onunla çalışmak için şablonlar adapte. Çoğu uygulama için, bunu yapmak için en basit yolu Uygulama kurucu autoescape = Yok geçmektir.
    • AsyncHTTPClient.configure arayarak bunu yapabilirsiniz yerine simple_httpclient bir curl_httpclient kullanmaya devam etmek isteyen Uygulamaları (& quot; tornado.curl_httpclient.CurlAsyncHTTPClient & quot;) sürecin başında. Python 2.5 kullanıcıları büyük ihtimalle simple_httpclient sadece Python 2.6 + tarihinde ssl destekler curl_httpclient kullanmak isteyeceksiniz.
    • Python 3 bu sürüme yükseltme yaparken kullanıcıların daha iyice her zamankinden daha kendi uygulamaları test etmek için teşvik edilir, böylece uyumluluk, kod temeli boyunca birçok değişiklik çıkıyor.
    • sürüm 4.1 diğer değişiklikler:
    • Şablonlar birkaç yeni direktifleri desteği: - {% autoescape ...%} kaçan davranışını kontrol etmek - {hammadde% ...%} öncelenMEmiş çıkış için - UIModules çağırmak için {% modülü ...%} * {% modülü Şablon (yol, ** kwargs)%} şimdi bağımsız bir ad ile başka bir şablon çağırmak için kullanılıyor olabilir.
    • Tüm iostream geri çağrıları şimdi add_callback aracılığıyla IOLoop doğrudan çalıştırabilirsiniz.
    • HTTPServer artık nerede IPv6'yı destekler. () HTTPServer.bind aile = socket.AF_INET geçmek devre dışı bırakmak için.
    • httpclient şimdi IPv6 HTTPRequest üzerinde allow_ipv6 = bool üzerinden yapılandırılabilir destekler. allow_ipv6 curl_httpclient üzerinde simple_httpclient false ve true varsayılan.
    • RequestHandlers decode_argument geçersiz kılarak sorgu parametreleri için utf-8 dışında bir kodlama kullanabilirsiniz ().

    • Özellikle IOLoop bir sürü zaman aşımları kullanan uygulamalar için
    • Performans iyileştirmeleri.
    • HTTP SEÇENEKLERİ yöntemi artık XSRF belirteci gerektirir.
    • JSON çıkışı (RequestHandler.write (dict)) şimdi uygulama / json Content-Type ayarlar.
    • Etag hesaplama şimdi RequestHandler.compute_etag geçersiz özelleştirilebilir veya devre dışı bırakılabilir.
    • USE_SIMPLE_HTTPCLIENT ortam değişkeni artık desteklenmiyor. Kullanım AsyncHTTPClient.configure yerine.

    nedir sürümü 1.2.1 Yeni

    • Bu yayın sürümüne göre sadece iki küçük değişiklikler içeriyor 1.2:
    • FacebookGraphMixin Facebook API son değişikliği ile çalışmak için güncellendi.
    • Koşu & quot; & quot yüklemek setup.py; artık otomatik pycurl yüklemeye çalışacaktır. Bu pycurl yüklemek için en iyi yolu gibi bir şey üzerinden gerçekleştirilir platformlarda çalışma değildi yerine easy_install apt-get. Eğer FacebookGraphMixin kullanıyorsanız, ancak aksi takdirde güvenli bir şekilde yok edilebilir, bu önemli bir gelişme olduğunu söyleyebiliriz.

    nedir sürümü 1.2.0 Yeni

    • Bu sürüm geriye uyumsuz güvenlik değişikliğini içerir sürüm 1.1.1.

    • şeffaf, bu yeni uygulama ile tornado.httpclient.AsyncHTTPClient değiştirmek için
    • ortam değişkeni USE_SIMPLE_HTTPCLIENT = 1
    • ayarlayabilirsiniz
    • İstek günlüğü şimdi Uygulama ziyade RequestHandler tarafından yapılır. Günlüğü davranış ya bir alt sınıfta geçersiz Application.log_request veya bir uygulama ayarı olarak log_function geçirerek özelleştirilebilir.

    nedir sürümü 1.1.1 Yeni

    • Tornado 1.1.1 olan bir GERİYE-UYUMSUZ güvenlik Bir XSRF açığı giderir güncelleme.

    sürüm 1.1 yeni Nedir:

    • Değişiklikleri:

    • başka sınıflara
    • RequestHandler.async_callback ve ilgili fonksiyonlar artık (çoğu durumda ihtiyaç duyulan devam etmek zararsız olsa
    • bunları kullanarak). Yakalanmamış istisnalar şimdi isteği bile geri arama kapalı neden olur. Bu nasıl çalıştığını merak ediyorsanız, yeni tornado.stack_context modülünü bkz.
    • Yeni tornado.testing modül birim test asenkron IOLoop tabanlı kod için destek içerir.
    • AsyncHTTPClient yeniden yazılmıştır (yeni uygulama Tornado 1.0 AsyncHTTPClient2 olarak kullanılabilir; her iki isim geriye doğru desteklenir
    • uyumluluk).
    • tornado.auth modülü OAuth 2.0 ve Facebook Graph API ve OAuth 1.0a yükseltme Twitter ve Google desteği için destek dahil, güncellemeleri bir dizi olmuştur.
    • WebSocket modülü geri döndü ve WebSocket protokolünün en son sürümünü (76) destekler. Bu modülün arayüzü Tornado öncesi 1.0 sürümlerinde ortaya çıktı WebSocket modülünden farklı olduğunu unutmayın.
    • Yeni yöntem RequestHandler.initialize () URLSpecs gelen taşıma argümanlar basitleştirmek için alt sınıflarda geçersiz kılınabilir. Başlatma sırasında denilen yöntemlerin dizisi http://tornadoweb.org/documentation#overriding-requesthandler-methods de belgelenmiştir
    • get_argument () ve benzer yöntemler artık POST ek olarak PUT istekleri üzerinde çalışmak.
    • httpclient modülü artık HTTP proxy destekler.

    • SSL modunda çalıştırılan HTTPServer
    • SSL el sıkışması artık engellenmeyen olduğunu.
    • Birçok küçük hata düzeltmeleri ve belge güncelleştirmeleri
    • Geriye dönük uyumluluk notlar:

    • Tornado çoğu kullanıcı doğrudan stack_context modülü ile uğraşmak zorunda olmamalıdır iken
    • işçi iş parçacığı havuzları ve benzeri yapıları kullanıcıları ve / veya NullContext bellek sızıntıları önlemek için stack_context.wrap kullanmanız gerekebilir.
    • Yeni AsyncHTTPClient hala libcurl sürümü 7.16.x ile çalışır, ancak libcurl ve pycurl hem en azından sürüm 7.18.2 zaman daha iyi bir performans sergiliyor.

    • auth modülünün önceki sürümleri altında başlatılan
    • OAuth işlemleri yeni modül altında tamamlanmış olamaz. Bu sadece ilk yetkilendirme süreci için de geçerlidir; yetkili bir belirteç verilir kez bu belirteç sürümü ile ya çalışır.

    Gereksinimleri

    • Python 2.6 veya daha yüksek

  • Benzer yazılım

    Apache Thrift
    Apache Thrift

    13 Apr 15

    Apache Stratos
    Apache Stratos

    10 Feb 16

    Radium
    Radium

    12 May 15

    Geliştirici Diğer yazılım Facebook

    React
    React

    5 Sep 16

    Ringmark
    Ringmark

    13 May 15

    Yorumlar Tornado

    Yorum Bulunamadı
    Yorum eklemek
    Görüntülerde açın!