GNU libmicrohttpd 0.9.74 аль хэдийн гарсан бөгөөд эдгээр нь түүний мэдээ юм

Саяхан GNU төслийн хувилбарыг гаргасан номын сангийн шинэ хувилбар libmicrohttpd 0.9.74, Аппликешнүүдэд суулгасан HTTP серверийн функцэд зориулсан энгийн API-г илэрхийлдэг.

Номын сан HTTP 1.1 протокол, TLS, POST хүсэлтийн өсөлттэй боловсруулалтыг дэмждэг. үндсэн болон дижест нэвтрэлт танилт, IPv6, SHOUTcast болон холболтыг олон талт болгох янз бүрийн аргууд (сонгох, санал асуулга, pthread, урсгалын сан) нь одоогоор GNU / Linux, FreeBSD, OpenBSD, NetBSD, Solaris, Android зэрэг дэмжигдсэн төрөл бүрийн платформуудыг дэмждэг. , macOS, Win32, Symbian болон z / OS.

GNU libmicrohttpd нь тухайн үед бусад төслүүдэд нэгэн зэрэг HTTP сервер нэмэх хялбар арга хэрэгтэй байсан зохиогчийнхоо хэрэгцээ шаардлагаас үүдэлтэй юм. Одоо байгаа хувилбарууд нь чөлөөт бус, дахин орохгүй, бие даасан, аймшигтай кодын чанар эсвэл тэдгээрийн хослол байв.

Онцлог шинж чанаруудаас Энэ хэрэгжилтээс ялгарах нь:

  • C номын сан: хурдан бөгөөд жижиг
  • API нь энгийн, ойлгомжтой, бүрэн дахин нэвтрэх боломжтой.
  • Хэрэгжилт нь HTTP 1.1-тэй нийцдэг
  • HTTP сервер нь олон порт дээр сонсох боломжтой
  • Олон урсгалтай горимууд: Хэрэглээний утас, дотоод утас, урсгалын сан, холболт тус бүр дээр ажиллах
  • Гурван өөр залгуур санал авах горим: сонгох (), санал асуулга () болон epoll
  • Цөм / хэрэглэгчийн горимын нэмэлт өөрчлөлтөөс зайлсхийхийн тулд системийн дуудлагын хамгийн бага тоо
  • Дэмжигдсэн платформуудад GNU / Linux, FreeBSD, OpenBSD, NetBSD, Android, Darwin (macOS), W32, OpenIndiana / орно.
  • Solaris болон z / OS
  • IPv6-ийн дэмжлэг
  • SHOUTcast дэмжлэг
  • POST өгөгдлийг аажмаар боловсруулахад дэмжлэг үзүүлэх (заавал биш)
  • Үндсэн болон далд баталгаажуулалтын дэмжлэг (заавал биш)
  • TLS дэмжлэг (libgnutls шаардлагатай, нэмэлт)
  • Хоёртын файл нь ердөө 32к орчим (TLS дэмжлэг болон бусад нэмэлт функцгүй)

Libmicrohttpd-ийн үндсэн шинэ боломжууд 0.9.74

Номын сангийн шинэ хувилбараас бид үүнийг олж чадна WebSockets протоколын туршилтын хэрэгжилтийг нэмж, Энэ нь хараахан сайн туршигдаагүй бөгөөд анхдагчаар идэвхгүй болсон.

Өөр нэг шинэлэг зүйлийг танилцуулж байна HTTP 1.0 / 1.1 протоколын хэрэгжилтийн үзүүлэлтүүдийн нийцлийг сайжруулсанҮүнээс гадна, хуваагдсан хүсэлтийг тайлахын тулд кодыг дахин боловсруулсан.

Үүнийг бас онцолсон муу хэсэгчилсэн хүсэлттэй холбоотой алдааг автоматаар буцаахын тулд код нэмсэн, хэт том өгөгдлийн хэмжээ ба Агуулгын уртын толгой хэсгийн буруу тохиргоо.

Энэ нь хэрэгжсэн дотоод оновчлол, жишээлбэл, санах ойн менежментийг сайжруулж, хэшийн үр ашгийг дээшлүүлж, HTTP арга болон протоколын хувилбарыг давтан задлан шинжлэхийг арилгах.

Энэ нь HTTP толгой хэсгийн утгыг илүү хатуу баталгаажуулж, хариултын толгойн утгуудад таб тэмдэгт ашиглахыг зөвшөөрсөн боловч өөрчлөн тохируулсан толгойн утгуудад хоосон зай ашиглахыг хориглосон гэдгийг мөн тэмдэглэв.

Түүнээс гадна, Хариуд нь HTTP толгойг үүсгэх кодыг бүрэн дахин бичсэн мөн хугацаа дуусах нарийвчлалыг секундээс миллисекунд хүртэл нэмэгдүүлсэн.

Код доторх асуудал илрүүлэх горимуудыг сонгон идэвхжүүлэхийн тулд бүтээх сонголтыг нэмсэн – ариутгагч бодисыг идэвхжүүлэх [= хаяг, тодорхойгүй, гоожиж, хэрэглэгчийн хор].

Doxy функцүүдийн тайлбарыг засч, тодруулж, өргөжүүлж, сайжруулсан бөгөөд одоо гарчгийг уншаад л MHD сурахад илүү хялбар байх ёстойг дурдаж байна.

Энэ шинэ хувилбарт гарч буй бусад өөрчлөлтүүдээс:

  • microhttpd.h толгой файл дахь функцийн тайлбарыг сайжруулсан.
  • , MHD_CONNECTION_INFO_HTTP_STATUS туг, MHD_get_connection_info (), түүнчлэн MHD_CONNECTION_INFO_HTTP_STATUS туг хариу болон MHD_SDRIVE_HDRFKE_HDR_HDRF_HDR_HDRF_HDRF_REND_HDRF_HDRF_REND_HDRF_HDR_RF_RF_HDR_RF_HDRF_ хариу API функцүүд нэмэгдсэн MHD_get_reason_phrase_len_for () болон MHD_create_response_from_buffer_with_free_callback_cls ().
  • MSVC дээр угсрах төслийн файлыг нэмсэн.
  • Хариултын толгойн хэлбэрийг бүрэн дахин бичсэн. Шинэ хэрэгжүүлэлт нь илүү бат бөх, засвар үйлчилгээ хийхэд хялбар, өргөтгөх боломжтой бөгөөд RFC HTTP-ийн үзүүлэлтүүдийг илүү сайн дагадаг.
  • Гүйцэтгэлийн сайжруулалт: Одоо HTTP хувилбар болон хүсэлтийн аргыг зөвхөн нэг удаа тайлж байна (өмнө нь MHD олон мөрийн харьцуулалтыг ашигладаг байсан)

Эцэст нь Хэрэв та энэ талаар илүү ихийг мэдэхийг хүсч байвал Энэ хувилбарын талаар та түүний вэб сайтаас хэрэглэгчийн гарын авлага болон бусад мэдээллээс лавлаж болно.

Холбоос энэ байна.


Нийтлэлийн агуулга нь бидний зарчмуудыг баримталдаг редакцийн ёс зүй. Алдааны талаар мэдээлэхийн тулд товшино уу энд байна.

Сэтгэгдэл бичих эхний хүн бай

Сэтгэгдэлээ үлдээгээрэй

Таны и-мэйл хаяг хэвлэгдсэн байх болно.

*

*

  1. Мэдээллийг хариуцах: Мигель Анхель Гатан
  2. Мэдээллийн зорилго: СПАМ-ыг хянах, сэтгэгдлийн менежмент.
  3. Хууль ёсны байдал: Таны зөвшөөрөл
  4. Мэдээллийн харилцаа холбоо: Хуулийн үүргээс бусад тохиолдолд мэдээллийг гуравдагч этгээдэд дамжуулахгүй.
  5. Өгөгдөл хадгалах: Occentus Networks (ЕХ) -с зохион байгуулсан мэдээллийн сан
  6. Эрх: Та хүссэн үедээ мэдээллээ хязгаарлаж, сэргээж, устгаж болно.