Tntnet egy moduláris, többszálú webapplicationserver írt a semmiből a C ++.
Létrehozni webapplications Tntnet egy sablont nyelvű nevű ecpp hasonló a php, jsp vagy kőműves, ahol lehet beágyazni c ++ - kód belsejében egy HTML-oldalt generálni aktív tartalom.
A ecpp-fájlok előre lefordított, hogy c ++ - osztályok úgynevezett alkatrészek és összeállította és kapcsolt be egy megosztott könyvtár. Ezt a folyamatot kelt compiletime. A webszerver Tntnet szüksége csak a lefordított componentlibrary.
Mivel a webapplications be vannak fordítva az őshonos kódot, nagyon gyors és kompakt.
Components hívhatják egyéb alkatrészek. Így létre buildingblocks a html-alkatrészek és hívja őket más oldalakon, mint alfolyamatokat.
A kérelmek elemezze tntnet és a kérelem-információ könnyen elérhető az alkatrészeket. Támogatja a GET és a POST-paraméterek és Mime-többrészes kérelmek fájlfeltöltés.
A templatelanguage is támogatják a nemzetközivé vált alkalmazásokat. Könnyedén létrehozhat webapplications különböző nyelveken.
Egyéb jellemzők: sütik, HTTP-upload, automatikus kérés-paraméter értelmezése és átalakítása, automata sessionmanagement, távcsöves változók (alkalmazás, kérésre és session), nemzetközivé, keep-alive.
Naplózás keresztül történik cxxtools, amely egyedülálló API for log4cpp, log4cxx vagy egyszerű naplózás a fájlokat vagy konzolon.
Tntnet teljesen többszálú, és nagyon sok munkát fektettek ment bele, hogy ez bővíthető. Ez egy dinamikus medence workerthreads, amely a kéréseket a http-ügyfelek.
Az SSL keresztül támogatja az OpenSSL-könyvtár.
Tulajdonságok :
- írt szabványos C ++ Linux
- tesztelve & quot; Debian Woody x86 & quot; és a & quot; SuSE Linux 9.1 x86_64 & quot;
- Sablon nyelvű beágyazni c ++ - kódot html hasonló PHP, JSP, ASP, vagy Mason
- komponens-koncepció lehetővé teszi a moduláris webapplications
- többszálú
- összeállít egy webapplication beleértve a grafikus egyetlen megosztott könyvtár
- utils és POST-paramétereket értelmezi, és könnyen megközelíthető
- támogatását fájl-feltöltések
- támogatását i18n a webapplications - egyetlen codebase különböző nyelvekhez.
Mi az új ebben a kiadásban:
- New proxy modul:
- Az új modul proxy @ tntnet lehetővé teszi továbbítása kérelmet más http szerver.
- Biztonságos ülésen teret változók csak akkor érvényes SSL session:
- Egy új típusú hatálya `` a felhasználó meghatározhatja változók, amelyek csak akkor érvényes, az SSL-kapcsolatokat. Szintén külön cookie-t küld, amely egy attribútum, hogy javasolja a böngésző használata csak ha az SSL lehetővé teszi.
- Beállítás tntnet xml (vagy JSON), beleértve a fakitermelés:
- Korábban a tntnet volt állítva egy szöveges fájlt egy egyszerű, de saját formátumú. Naplózás konfigurálható egy külön fájlt más formátumban. Mindkét kombinálják most egy xml fájlt.
- Vegye cgi könyvtárban:
- Ott szokott lenni egy könyvtár, amely lehetővé teszi, hogy fut ecpp komponensek cgi folyamatok. A használata korlátozott volt, és a teljesítmény cgi mindig rossz. Amennyire én tudom, senki nem használta (jó okkal). Ezért, ha eltávolítják most.
- Növelje url leképezés mapping módszerrel vagy ssl:
- Mapping kérések alkatrészek meghosszabbodik. Nem csak az URL lehet használni, mint egy állapot, de az is a http módszer vagy az SSL-állapot. Az előző külön mapping egy virtuális géphez most is definiálható mapping állapotban.
- A serialization keret olvasni% config változók tntnet konfiguráció támogatása komplex konfigurációk:
- A ecpp tag `` lehetővé teszi a webes alkalmazások olvasni értékeket a tntnet konfigurációs fájl. Korábban csak egy skalár változó lehet olvasni. Most már a cxxtools serialization összetett objektumok lehet állítani és át kell adni egy webes alkalmazás.
- ecpp compiler nem lehet megállni első hiba többé, de megpróbálja megtalálni több problémát:
- A ecpp fordító `ecppc` megállt összeállítása az első hiba. Most megpróbálja helyreállítani, és továbbra összeállítása és jelentési hibák.
- Az alkalmazások törölje az aktuális munkamenet:
- hívása az új módszer `request.clearSession ()` törli az összes munkamenet változók után a jelenlegi kérést.
- Olvassa fájlneveket multibinary összetevő adott a fájlt -i in ecppc:
- Multibinary alkatrészeket tartalmaznak gyűjteménye statikus fájlok, amelyet össze egyetlen tntnet összetevője. Ez segít megóvni az overhead, hiszen minden egyes alkatrész szüksége van némi kódot, ami miatt felmondható. Mivel a fenti statikus fájlok használt egy webes alkalmazás Elég hosszú lehet, gyakran célszerű fenntartani a lista egy külön fájlban. Szintén egy nagyon hosszú lista meghosszabbíthatják a maximális megengedett hossza egy shell parancsot. Most `ecppc` tudja olvasni a listát fájlból megoldani ezt.
- Érvek url mapping van már neve:
- Ha feltérképezése a kéréssel, hogy a komponens, érveket lehet vezetni a konfigurációt a komponens. Korábban ez csak a fenti értékeket. Most az értékeket van neve, ami megkönnyíti a nyomtató- és olvashatóbb.
- Allow distinquishing között a GET és POST érvek:
- Ecpp lehetővé meghatározó lekérdezést a paramétereket a 'tag. Tntnet telt itt minden a GET és a POST paraméterek. A fejlesztők számára nehéz volt, hogy megtudja, ha érveket keresztül átadott GET vagy POST. Most érveket lehet meghatározni a `` `` vagy részben, hogy csak a GET vagy POST paraméterek.
- hibajavítás és optimalizáció:
- Néhány apróbb hibajavításokat és optimalizálás történik a tntnet.
Mi az új 2.1-es verzió:
- A frissítési idő. Ez a kibocsátás eredménye 2 éves fejlesztési látnia sok javulást.
- Ez a kiadás a JSON és jsonrpc hogy cxxtools, valamint a gyors bináris RPC szerver és kliens. Mindkettő alapja a javuló serialization keretében cxxtools.
- A JSON és bináris formátumot lehet használni, mint a tárolási formátum. Szintén sorozatprogramozásának deserialization a csv lehetséges.
- A Unicode karakterláncot specializáció std :: basic_string van egy jelentős újraírás rövid karakterlánc optimalizálása.
- Tntnet főleg sok kis javulás, a jobb és melyik szabványnak felel valamivel nagyobb teljesítményt.
- Tntdb kapott egy replikációs driver, amely képes lemásolni az adatokat adatbázisok közötti nélkül adatbázis támogatás. A tizedes class újraírt és kapott unittests. Az új RowReader osztályú teszi kódot olvashatóbb, ha sok oszlop van leolvasva eredményeként sor. Egy új réteg BlobStream valósít std :: istream_FAR felületet foltok.
Mi az új 2.0 verzióban:
- A több mint 2 éve új nélkül stabil kiadások itt az ideje, a frissítéseket. Cxxtools van hot hatalmas fejlesztések és szolgáltatási fejlesztést, mint xmlrpc, a jelek slot keretet, anynchronous I / O és mások.
- Ez a hallgatólagos valamilyen API változások. Mégis a legtöbb létező kódot kell futtatni. Tntnet és tntdb szükséges néhány változás ehhez, úgy, hogy az új és tntnet tntdb kibocsátások szüksége van cxxtools 2,0.
- Tntnet számára sok kis funkció és javítja a teljesítményt. Szerencsére nem volt sok szükség API változások. Szinte alkalmazások elfogy a doboz újrafordítás.
- Tntdb van néhány szolgáltatási fejlesztést. Legfontosabbak talán a támogatást auto növekszik értékek módszerrel tntdb :: Connection :: lastInsertId (STD :: string) és támogatja a felhasználó által definiált típusok túlterheli 2 üzemeltetők.
Mi az új verzióban 1.6.99:
- Tntnet kapott néhány kisebb hibajavítások és igazodnak Az API változások cxxtools (ami meglehetősen kicsi).
Hozzászólás nem található