Toxiproxy, egy keretrendszer a hálózati feltételek tesztkörnyezetekben történő szimulálására

Shopify, amely az egyik legnagyobb és legnépszerűbb e-kereskedelmi platformot fejleszti a weben, dAz io nemrég bejelentette, hogy elindította a «Toxiproxy 2.3» proxyszerver új verzióját. amely a hálózat meghibásodásának és anomáliáinak szimulálására szolgál, valamint a rendszerben az alkalmazások állapotának tesztelésére, amikor ilyen körülmények lépnek fel.

A program kiemelkedik a kommunikációs csatorna jellemzőinek dinamikus megváltoztatására szolgáló API-val, amellyel a Toxiproxy egységtesztrendszerekkel integrálható, amellett, hogy támogatja a folyamatos integrációs platformokat és fejlesztői környezeteket is.

A Toxiproxyról

Ez a keret kifejezetten tesztkörnyezetben való használatra készült, CI és fejlesztés, valamint támogatja a kapcsolatok determinisztikus manipulálását, de támogatja a véletlenszerű káoszt és a testreszabást.

alapvetően, A Toxiproxy eszközként van elhelyezve hogy mindazok, akik igénylik hajtson végre demóteszteket olyan alkalmazásokon, amelyeknek nincs egyetlen hibapontja. A Toxiproxyt 2014 októbere óta sikeresen használják a Shopify összes fejlesztési és tesztelési környezetében.

A toxiproxy használata két részből áll. Egy Go-ban írt TCP-proxy (amit ez a lerakat tartalmaz) és egy kliens, amely HTTP-n keresztül kommunikál a proxyval. Ez úgy konfigurálja az alkalmazást, hogy az összes tesztkapcsolat átmenjen a Toxiproxy-n, majd módosítani tudja állapotukat HTTP-n keresztül.

Más szóval, a proxy a tesztelt alkalmazás és a hálózati szolgáltatás között, amellyel az alkalmazás kölcsönhatásba lép, elindul, amely után szimulálhatja egy bizonyos késés előfordulását a szervertől válasz fogadásakor vagy kérés elküldésekor, megváltoztathatja a sávszélességet, szimulálhatja a kapcsolatok elfogadásának megtagadását, megszakíthatja a normál létesítési folyamatot vagy a kapcsolatok lezárását, visszaállíthatja a létrehozott kapcsolatokat, torzíthatja a csomagok tartalmát.

A proxyszerver működésének alkalmazásokból történő vezérléséhez Ruby, Go, Python, C # /. NET, PHP, JavaScript / Node.js, Java, Haskell, Rust és Elixir klienskönyvtárak állnak rendelkezésre, amelyek lehetővé teszik a Az interakciós feltételek menet közben hálózatba lépnek, és azonnal értékelik az eredményt.

A kommunikációs csatorna jellemzőinek megváltoztatásához a kód módosítása nélkül egy speciális toxiproxy-cli segédprogram használható (a Toxiproxy API-t állítólag egységtesztekben használják, és a segédprogram hasznos lehet interaktív kísérletekben).

Mi az új a Toxiproxy 2.3-ban?

Ami az új verzióban szereplő változtatásokat illeti, megemlítjük, hogy a HTTPS-hez egy kliens végpontvezérlőt is tartalmaznak.

Valamint a tipikus teszt-illesztőprogramok külön fájlokra bontása, a client.Populate API megvalósítása.

Ezen kívül kiemelkedik az armv7 és armv6 platformok támogatása és a szerver regisztrációs szintjének megváltoztatása.

Telepítse a Toxiproxyt Linuxra

Azok számára, akiket érdekel, hogy telepíteni tudják ezt a keretrendszert, hogy elvégezhessék a teszteket, ezt megtehetik kövesse az alábbiakban megosztott lépéseket.

Ha Ön a Debian, Ubuntu vagy bármely más ezeken alapuló disztribúció, A telepítést egy terminál megnyitásával hajthatja végre (használhatja a Ctrl + Alt + T billentyűkombinációt), és abba írja be:
wget https://github.com/Shopify/toxiproxy/releases/download/v2.3.0/toxiproxy_2.3.0_linux_amd64.deb

És folytatjuk a telepítést:
sudo apt install ./toxiproxy_2.3.0_linux_amd64.deb

Azok esetében, amelyek vannak RPM-csomagokat támogató disztribúciók felhasználói, mint például a Fedora, az openSuse, az RHEL, a letöltendő csomag a következő:
wget https://github.com/Shopify/toxiproxy/releases/download/v2.3.0/toxiproxy_2.3.0_linux_amd64.rpm

És telepítse a csomagot a következő beírásával:
sudo rpm -i toxiproxy_2.3.0_linux_amd64.rpm

A telepítés után elindíthatja a szolgáltatást a következő parancs végrehajtásával a terminálban:
sudo service toxiproxy start

Végül, ha eÉrdekel, hogy többet tudjon meg róla, Tudnia kell, hogy a Toxiproxy kód Go nyelven van írva, és rendelkezik MIT licenccel, és megtekintheti a keretrendszer használati útmutatóját a következő link.


Hagyja megjegyzését

E-mail címed nem kerül nyilvánosságra. Kötelező mezők vannak jelölve *

*

*

  1. Az adatokért felelős: AB Internet Networks 2008 SL
  2. Az adatok célja: A SPAM ellenőrzése, a megjegyzések kezelése.
  3. Legitimáció: Az Ön beleegyezése
  4. Az adatok közlése: Az adatokat csak jogi kötelezettség alapján továbbítjuk harmadik felekkel.
  5. Adattárolás: Az Occentus Networks (EU) által üzemeltetett adatbázis
  6. Jogok: Bármikor korlátozhatja, helyreállíthatja és törölheti adatait.