GNU libmicrohttpd 0.9.74 zaten yayınlandı ve bunlar onun haberleri

geçenlerde GNU projesi, kütüphanenin yeni versiyonu libmicrohttpd 0.9.74, Uygulamalarda yerleşik HTTP sunucusu işlevi için basit bir API'yi temsil eden A.

Kütüphane HTTP 1.1 protokolünü, TLS'yi, POST istek artımlı işlemeyi destekler, temel ve özet kimlik doğrulama, IPv6, SHOUTcast ve çoğullama bağlantıları için çeşitli yöntemler (select, poll, pthread, thread pool), şu anda uygulama GNU / Linux, FreeBSD, OpenBSD , NetBSD, Solaris, Android dahil olmak üzere çeşitli desteklenen platformları desteklemektedir. , macOS, Win32, Symbian ve z/OS.

GNU libmicrohttpd, o zamanlar diğer projelere eşzamanlı bir HTTP sunucusu eklemenin kolay bir yoluna ihtiyaç duyan yazarının ihtiyacı nedeniyle doğdu. Mevcut alternatifler özgür olmayan, yeniden giriş yapmayan, bağımsız, korkunç kod kalitesi veya bunların bir kombinasyonuydu.

Özelliklerinden bu uygulamaya dikkat çeken:

  • C Kütüphanesi: hızlı ve küçük
  • API basit, anlamlı ve tamamen yeniden girişlidir.
  • Uygulama HTTP 1.1 uyumludur
  • HTTP sunucusu birden çok bağlantı noktasını dinleyebilir
  • Birden Çok İş Parçacığı Modu: Uygulama İş Parçacığında Çalıştır, İç İş Parçacığı, İş Parçacığı Havuzu ve Bağlantı Başına İş Parçacığı
  • Üç farklı soket sorgulama modu: select (), poll () ve epoll
  • Ek çekirdek / kullanıcı modu değişikliklerinden kaçınmak için minimum sistem çağrısı sayısı
  • Desteklenen platformlar arasında GNU / Linux, FreeBSD, OpenBSD, NetBSD, Android, Darwin (macOS), W32, OpenIndiana /
  • Solaris ve z / OS
  • IPv6 desteği
  • SHOUTcast desteği
  • POST verilerinin artımlı işlenmesi için destek (isteğe bağlı)
  • Temel ve örtük kimlik doğrulama desteği (isteğe bağlı)
  • TLS desteği (libgnutls gerektirir, isteğe bağlı)
  • İkili dosya yalnızca yaklaşık 32k'dir (TLS desteği ve diğer isteğe bağlı özellikler olmadan)

libmicrohttpd 0.9.74'ün başlıca yeni özellikleri

Kütüphaneden sunulan bu yeni sürümde şunu bulabiliriz: WebSockets protokolünün deneysel bir uygulamasını ekledi, henüz iyi test edilmemiş ve varsayılan olarak devre dışı bırakılmıştır.

Sunulan bir diğer yenilik ise, HTTP 1.0 / 1.1 protokol uygulama spesifikasyonlarıyla uyumluluk iyileştirildiAyrıca, parçalanmış isteklerin kodunu çözmek için kod üzerinde yeniden çalışıldı.

Ayrıca vurgulanmıştır ki hatalı yığınlanmış isteklerle ilgili hataları otomatik olarak döndürmek için kod eklendi, çok büyük veri boyutu ve yanlış İçerik Uzunluğu başlık ayarı.

Gerçekleştirildi dahili optimizasyonlar, örneğin, geliştirilmiş bellek yönetimi, geliştirilmiş karma verimliliği ve HTTP yönteminin ve protokol sürümünün tekrarlayan ayrıştırmasının ortadan kaldırılması.

Ayrıca, HTTP başlık değerlerinin daha katı bir doğrulamasını sağladığı, yanıt başlık değerlerinde bir sekme karakterinin kullanılmasına izin verdiği, ancak özel başlık değerlerinde boşluk kullanılmasını yasakladığı da not edildi.

Bunun yanı sıra, yanıt olarak HTTP üstbilgileri oluşturma kodu tamamen yeniden yazıldı ve zaman aşımı hassasiyeti saniyeden milisaniyeye yükseltildi.

Kodda sorun algılama modlarını seçici olarak etkinleştirmek için derleme seçeneği –enable-dezenfektanlar [= adres, tanımsız, sızıntı, kullanıcı zehiri] eklendi.

Doxy özelliklerinin düzeltilmiş, netleştirilmiş, genişletilmiş ve geliştirilmiş açıklamaları, artık sadece başlıkları okuyarak MHD öğrenmenin çok daha kolay olması gerektiğinden bahsediliyor.

Bu yeni sürümde öne çıkan diğer değişikliklerden:

  • microhttpd.h başlık dosyasında iyileştirilmiş işlev açıklamaları.
  • API işlevleri MHD_get_reason_phrase_len_for () ve MHD_create_response_from_buffer_with_free_callback_cls () ilave edildi, MHD_CONNECTION_INFO_HTTP_STATUS bayrak, MHD_get_connection_info (), hem de MHD_CONNECTION_INFO_HTTP_STATUS bayrak yanıtları ve MHD_SDRIVE_HDRFKE_HDR_HDRF_HDR_HDRF_HDRF_REND_HDRF_HDRF_REND_HDRF_HDR_RF_RF_HDR_RF_HDRF_ tepkileri.
  • MSVC'de montaj için proje dosyası eklendi.
  • Yanıt başlığı oluşumu tamamen yeniden yazıldı. Yeni uygulama daha sağlam, bakımı daha kolay ve genişletilebilir ve RFC HTTP özelliklerini daha iyi takip ediyor.
  • Performans iyileştirmeleri: Artık HTTP sürümü ve istek yönteminin kodu yalnızca bir kez çözülüyor (önceden MHD birçok dize karşılaştırması kullanıyordu

Nihayet onun hakkında daha fazla bilgi edinmekle ilgileniyorsan Bu sürümle ilgili olarak, web sitesindeki kullanım kılavuzlarına ve diğer bilgilere başvurabilirsiniz.

Bağlantı bu.


Yorumunuzu bırakın

E-posta hesabınız yayınlanmayacak. Gerekli alanlar ile işaretlenmiştir *

*

*

  1. Verilerden sorumlu: Miguel Ángel Gatón
  2. Verilerin amacı: Kontrol SPAM, yorum yönetimi.
  3. Meşruiyet: Onayınız
  4. Verilerin iletilmesi: Veriler, yasal zorunluluk dışında üçüncü kişilere iletilmeyecektir.
  5. Veri depolama: Occentus Networks (AB) tarafından barındırılan veritabanı
  6. Haklar: Bilgilerinizi istediğiniz zaman sınırlayabilir, kurtarabilir ve silebilirsiniz.