Esasy mazmuna geç
Ähli proýektler

Maglumat ýygnamak · Metbugata gözegçilik

Täzeliklere gözegçilik platformasy

Milli derejede täzelikleri ýygnaýan we olara gözegçilik edýän platforma: hasaba alnan habar saýtlaryndan türkmen, rus we iňlis dillerindäki makalalary ýygnaýar, olary açar sözler boýunça süzýär we temalaryň beýan edilişi barada hasabat berýär.

Meniň rolum
Backend programmist. Maglumat ýygnamagy, täze çeşmeleri tapmagy, API-leri we hasabatlary döretdim.
Tehnologiýalar
  • Go
  • Echo
  • GORM
  • PostgreSQL
  • RSS
  • Serper API

Mesele

Analitiklere köp saýtda üç dilde berlen temalar boýunça ähli neşirler gerekdi — täze çeşmeler bolsa yzygiderli peýda bolýar, şonuň üçin saýtlaryň kesgitli sanawy käbir neşirleri sypdyrýar.

Arhitektura

Täzeliklere gözegçilik platformasy — Arhitektura diagrammasyNews sitesRSS feedsPollerscheduledFilterkeywords · langNews DBPostgreSQLGoogle NewsSerper APIDiscoverynew domainsModerationvalid / invalidAPIreports · Excel
Fon sikli RSS lentalaryny sazlanýan aralyk bilen barlaýar, elementleri dekodlaýar we açar sözler bilen deňeşdirýär, dilini kesgitleýär we täzelikleri korpus bazasyna upsert edýär. Çeşme tapmak işi Google News-dan gözleýär, domenleri çykarýar, belli domenleri taşlaýar we galanlaryny moderasiýa nobatyna goýýar. Admin we açyk API-ler (Echo) täzelikleri, hasabatlary we Excel eksportlaryny berýär.

Esasy çözgütler

  1. 01Upsert-ler polling-i idempotent edýär

    Näme üçin
    Lentalar barlaglaryň arasynda şol bir elementleri gaýtalaýar. ON CONFLICT bilen goşmak sikliň dublikat döretmezden gerekli ýygylykda işläp bilmegini üpjün edýär.
  2. 02Tapylan çeşmeler moderasiýadan geçýär

    Näme üçin
    Gözleg netijelerinde gereksiz zatlar köp. Täze domenler täze, dogry ýa-da nädogry hökmünde saklanýar we diňe tassyklananlary barlanýan saýtlaryň sanawyna goşulýar — gözegçiligiň gerimi korpusy hapalamazdan giňelýär.
  3. 03Platforma maglumatlary we korpus üçin aýratyn bazalar

    Näme üçin
    Täzelikler korpusy çalt ösýär we hasabatlar üçin soraglar onuň üstünde ýerine ýetirilýär. Ony ulanyjylardan we API açarlaryndan aýry saklamak olaryň her biriniň ätiýaçlyk nusgasyny almaga we migrasiýasyny aýratyn geçirmäge mümkinçilik berýär.
    Kompromis
    Bazalaryň arasynda join ýok; serwis iki birikmäni dolandyrýar.

Näme döretdim

  • Hasaba alnan saýtlardan meýilnama boýunça RSS ýygnamak we açar sözler boýunça süzmek
  • Türkmen, rus we iňlis dilindäki mazmunyň dilini kesgitlemek
  • Google News (Serper API) arkaly täze çeşmeleri tapmak we täze saýtlar üçin moderasiýa nobaty
  • Iki PostgreSQL bazasy: platformanyň ulanyjylary we açarlary hem-de täzelikler korpusy
  • Idempotent upsert-ler, saýtlar we diller boýunça SQL hasabatlary, Excel-e eksport