CSGOLyzer projektiga sain head tagasisidet mis puudutas teisi Steam Market mänge ja siis avastasin, et ükski teine lehekülg ei kogu terves Steam Marketis olevaid esemeid. Keskendutakse paarile kindlale mängule nt Dota 2, TF2 ja CS:GO.
Küll on aga kõvasti teisi mänge kus on erinevaid esemeid, seega otsustasin käsile võtta projekti kus ma pean koguma üle 130000 eseme hinnainfot ja ajalugu. Seoses sellega sulgen CSGOLyzer lehe ja avan SteamApis.com, et ma saaks keskenduda ainult ühele lehele, mis teeb kõike.
Eelvaade leheküljest:
Hetkeseisuga on mul andmebaasis 136,063 market itemit ja 3,744 erinevat mängu kuhu alla need kuuluvad. Andmebaas on ~2GB suur.
Vahetasin MySQL välja MongoDB vastu, et ma ei peaks skeemidega pead vaevama kui Steam otsustab midagi lisada/eemaldada või muuta.
Selleks, et ma saaksin koguda Steamist kõigi nende esemete infot on mul tellitud IP Rotation teenus kus on saadaval üle 15,000 proxit. See annab mulle võimaluse koguda infot kiiresti ja effektiivselt. Tänu nendele proxidele on mulle tulnud juurde paar teist ideed mis aitaks inimesi kohe kindlasti Steamiga seotud lehekülgede arendamisega. (Steam limiteerib requeste 30/min päris paljudele lehekülgedele [inventory, market])
CSGOLyzerist on välja arenenud päris suur ja lahe projekt mis on mulle väljakutseks kuna ma pole varem nii suure andmebaasiga tegelenud ja nõnda palju web-scrapemist teinud.
Kuna minu web-scraperid võivad võtta kuni 6GB RAM-i each siis pidin tellima ka vähe võimsama serveri projekti jaoks. Eelmine projekt oli 2 gigase VPS-i peal, uus leht hakkab aga selle eluka peab elama https://www.soyoustart.com/ie/offers/e3-ssd-5.xml
Projekt kasutab:
- Laravel 5.2
- MongoDB
- NodeJS (peamiselt data kraapimiseks)
- HTML; CSS; JS (Bootstrap 3)
- IP Rotation teenus nagu nt: Luminati.io
Mis on teie arvamused ja ettepanekud? Praegu on parim aeg nõuda lehele asju mida ise kasutaksite.