Tntnet on modulaarinen, monisäikeinen webapplicationserver kirjoitettu tyhjästä C ++.
Voit luoda webapplications Tntnet on template-kieli kutsuttu ecpp samanlainen php, jsp tai muurari, jossa voit upottaa C ++ - koodin sisällä html-sivun tuottaa aktiivista sisältöä.
Ecpp-tiedostot esikäännetty C ++ - luokkien kutsutaan komponentit ja käännetty ja linkitetty osaksi jaettu kirjasto. Tämä prosessi on tehty compiletime. Palvelimelle Tntnet tarvitsee vain koottu componentlibrary.
Koska webapplications kootaan koodiksi, ne ovat erittäin nopea ja kompakti.
Komponentit voi soittaa muita komponentteja. Voit siis luoda buildingblocks html-osat ja soittaa niitä muilla sivuilla, kuten osaprosessit.
Pyynnöt jäsentää tntnet ja pyyntö-tieto on helposti komponentteja. Se tukee GET ja POST-parametrit ja Mime-moniosaisia-pyyntöjen file-upload.
Templatelanguage on myös tukea kansainvälistyneet sovelluksiin. Voit helposti luoda webapplications eri kielille.
Muita ominaisuuksia ovat: evästeet, HTTP-upload, automaattinen pyyntö-parametri jäsentämiseen ja muuntaminen, automaattinen sessionmanagement, scoped muuttujat (hakemus, pyyntö ja istunto), kansainvälistyminen, säilyttämisen.
Kirjaaminen tapahtuu cxxtools, joka tarjoaa ainutlaatuisen API log4cpp, log4cxx tai yksinkertaisia puunkorjuun tiedostoihin tai konsoliin.
Tntnet on täysin monisäikeinen ja paljon työtä on mennyt tekemään se skaalautuva. Se käyttää dynaamista allas workerthreads, joka vastaa pyyntöjä http-asiakkaita.
SSL on tuettu OpenSSL-kirjasto.
Ominaisuudet :
- kirjoitettu standardi-C ++ Linux
- testattu & quot; Debian Woody x86 & quot; ja & quot; SuSE Linux 9.1 x86_64 & quot;
- Kopioi pohja-kielen upottaa C ++ - koodia html samanlainen PHP, JSP, ASP tai Mason
- komponentti-käsite mahdollistaa modularisointiin on webapplications
- monisäikeinen
- koota webapplication lukien grafiikka yhteen jaettu kirjasto
- get ja POST-parametrit on jäsennetty ja ovat helposti
- tuki tiedostojen-kuvat
- tuki i18n of webapplications - yhden codebase eri kielillä.
Mitä uutta strong> tässä julkaisussa:
- Uusi proxy-moduuli:
- Uusi moduuli proxy @ tntnet avulla huolinta pyynnöstä muille http palvelimille.
- Secure istunto laajuus muuttujien voimassa vain SSL istunnot:
- Uusi soveltamisala tyyppi `` avulla käyttäjät voivat määrittää muuttujia, jotka ovat voimassa vain SSL-yhteyksiä. Myös erillinen eväste lähetetään joka määrite neuvoa selaimen käyttämään sitä vain, kun ssl on mahdollistaa.
- Määritä tntnet XML (tai JSON) kuten hakkuiden:
- Aiemmin tntnet konfiguroitiin tekstitiedosto yksinkertainen mutta formaattitekniikan. Puunkorjuu määritetty erillisessä tiedoston eri muodossa. Molemmat on yhdistetty nyt yhteen xml-tiedosto.
- Poista CGI kirjasto:
- Siellä käytetään olla kirjasto, joka mahdollistaa ajaa ecpp komponenttien cgi prosesseja. Käyttö rajattiin ja suorituskykyä CGI on aina huono. Sikäli kuin tiedän, kukaan ei ole käyttänyt sitä (hyvästä syystä). Näin se poistetaan nyt.
- Extend url kartoitus kartoitus menetelmällä tai ssl:
- Mapping pyyntöjä komponenttien laajennetaan. Ei vain url voidaan käyttää kunnossa, mutta myös http menetelmää tai SSL-tila. Edellisen erillinen kartoitus kohti virtuaalinen isäntä on nyt myös määritelty kartoitus kunnossa.
- Käytä serialization puitteet lukea% config muuttujat tntnet kokoonpano tukea monimutkaisia kokoonpanoja:
- ecpp tunniste `` mahdollistaa web-sovellusten lukea arvoja tntnet asetustiedosto. Aiemmin vain skalaarimuuttujan voitaisiin lukea. Nyt käyttäen cxxtools serialization monimutkaisia objekteja voidaan konfiguroida ja johdetaan web-sovellus.
- ecpp kääntäjä ei pysähdy Ensimmäinen virhe enää vaan yrittää löytää enemmän ongelmia:
- ecpp kääntäjä `ecppc` pysähtyi kokoamiseen ensimmäisen virheen. Nyt se yrittää toipua ja jatkaa kokoamiseen ja raportointiin virheitä.
- Salli sovellusten tyhjentää nykyisen istunnon:
- Calling uuden menetelmän `request.clearSession ()` tyhjentää kaikki session muuttujat jälkeen nykyisen pyynnöstä.
- Lue tiedostonimiä multibinary komponentin valinnaisesti tiedoston vaihtoehto -i ECPPC:
- Multibinary komponentit sisältävät kokoelma staattisia tiedostoja, jotka on koottu yhdeksi tntnet komponentti. Tämä auttaa säästää piirtoheitin koska jokainen komponentti tarvitsee koodin, mikä tekee siitä vaadittaessa maksettavaa. Koska lista staattisia tiedostoja käytetään web-sovelluksen voi olla melko pitkä, se on usein kätevä säilyttää luettelon erilliseen tiedostoon. Myös hyvin pitkä lista voivat pidentää suurin sallittu pituus komentotulkin komento. Nyt `ecppc` voi lukea listan tiedostosta ratkaisemaan tämän.
- Perusteita url kartoitus on nyt nimet:
- Kun kartoitus pyynnön komponentti, perusteluja voi tarttua kokoonpano komponentti. Aikaisemmin se oli vain listan arvoja. Nyt arvot on nimiä, mikä tekee käsittelystä helpompaa ja luettavissa.
- Salli distinquishing välillä GET ja POST perustelut:
- Ecpp avulla määritellään kyselyn parametrit `` tag. Tntnet läpäissyt täällä kaikki GET ja POST parametrit. Kehittäjille oli vaikea selvittää, jos väitteet läpäisseet kautta GET tai POST. Nyt argumentit voidaan määritellä `` tai `` kohta saada vain GET tai POST parametreja.
- Bugikorjauksia ja optimointeja:
- Joitakin pieniä bugikorjauksia ja optimointeja tehdään tntnet.
Mitä uutta strong> versiossa 2.1:
- Sen päivityksen aika. Nämä tiedotteet ovat tulos 2 vuotta kehitystä tunnuksella monia parannuksia.
- Tämä julkaisu lisää JSON ja jsonrpc jotta cxxtools sekä nopea binary RPC-palvelimen ja asiakkaan. Molemmat perustuvat parannettu serialization puitteissa cxxtools.
- JSON ja binäärimuodossa voidaan käyttää varastointiin muodossa. Myös serialization ja deserialization CSV on mahdollista.
- Unicode merkkijonon erikoistuminen std :: basic_string sai merkittävän uudelleenkirjoitus lyhyen merkkijono optimointi.
- Tntnet on lähinnä paljon pieniä parannuksia, parempi standardi noudattaminen ja hieman paremman suorituskyvyn.
- Tntdb sai replikointi kuljettaja, joka pystyy toistamaan dataa tietokannoista ilman tietokannan tuki. Desimaalin luokan kirjoitettiin uudelleen ja sai unittests. Uuden RowReader-luokan tekee koodin luettavuuden kun monta saraketta luetaan tulos rivi. Uusi luokka BlobStream toteuttaa std :: istream käyttöliittymä läiskä.
Mitä uutta strong> versiossa 2.0:
- Kun yli 2 vuotta uutta ilman vakaata julkaisua on aika päivityksiä. Cxxtools on kuuma valtava parannuksia ja ominaisuuksien parannuksia kuten xmlrpc, signaaliaikavälin puitteet, anynchronous I / O ym.
- Tämä merkitsi joitakin API muutoksia. Silti useimmat nykyisistä koodin pitäisi toimia. Tntnet ja tntdb tarvitaan joitakin muutoksia tähän, jotta uusi tntnet ja tntdb tiedotteita tarvitsevat cxxtools 2.0.
- Tntnet on saanut monia pieniä ominaisuus ja suorituskyvyn parannuksia. Onneksi ei ollut paljon tarvetta API muutoksia. Lähes sovellukset pitäisi ajaa kättelyssä mukaan recompiling.
- Tntdb sai joitakin ominaisuus parannuksia. Tärkeimmät ovat ehkä tukea auto kasvatetaan arvoja käyttäen menetelmää tntdb :: Yhteys :: lastInsertId (std :: string) ja tukea käyttäjän määrittämiä tyyppejä ylikuormituksesta 2 toimijat.
Mitä uutta strong> versiossa 1.6.99:
- Tntnet on saanut joitakin pieniä korjauksia ja tarkistetaan API muutoksia cxxtools (jotka ovat melko pieniä).
Kommentteja ei löytynyt