Чӣ тавр мо маълумотро дар бораи маъракаҳои таблиғотӣ аз сайтҳои онлайн ҷамъоварӣ кардем (роҳи душвор ба маҳсулот)

Чунин ба назар мерасад, ки соҳаи таблиғоти онлайн бояд то ҳадди имкон технологӣ пешрафта ва автоматӣ карда шавад. Албатта, барои он ки дар он бузургҷуссаҳо ва мутахассисони соҳаи худ, ба мисли Яндекс, Mail.Ru, Google ва Facebook кор мекунанд. Аммо, чунон ки маълум шуд, барои комилият маҳдудият вуҷуд надорад ва ҳамеша чизе барои автоматизатсия вуҷуд дорад.

Чӣ тавр мо маълумотро дар бораи маъракаҳои таблиғотӣ аз сайтҳои онлайн ҷамъоварӣ кардем (роҳи душвор ба маҳсулот)
Сарчашма

Гурӯҳи алоқа Шабакаи Dentsu Aegis Русия бузургтарин бозигари бозори таблиғоти рақамӣ аст ва ба технология фаъолона сармоягузорӣ мекунад ва кӯшиш мекунад, ки равандҳои тиҷоратии худро оптимизатсия ва автоматӣ кунад. Яке аз мушкилоти ҳалношудаи бозори таблиғоти онлайн вазифаи ҷамъоварии омор дар бораи маъракаҳои таблиғотӣ аз платформаҳои гуногуни интернетӣ гардид. Халли ин масъала дар нихояти кор боиси ба вучуд овардани махсулот гардид D1.Digital (ҳамчун DiVan хонед), ки мо мехоҳем дар бораи рушди он сӯҳбат кунем.

Чаро?

1. Дар вакти огози лоиха дар бозор ягон махсулоти тайёр набуд, ки масъалаи автоматикунонии чамъоварии омори маъракахои рекламавиро хал кунад. Ин чунин маъно дорад, ки гайр аз худи мо касе талаботи моро конеъ намегардонад.

Хидматҳо ба монанди Improvado, Roistat, Supermetrics, SegmentStream ҳамгироиро бо платформаҳо, шабакаҳои иҷтимоӣ ва Google Analytics пешниҳод мекунанд ва инчунин имкон медиҳанд, ки панелҳои таҳлилӣ барои таҳлил ва назорати қулайи маъракаҳои таблиғотӣ бунёд карда шаванд. Пеш аз оғози таҳияи маҳсулоти худ, мо кӯшиш кардем, ки баъзе аз ин системаҳоро барои ҷамъоварии маълумот аз сайтҳо истифода барем, аммо, мутаассифона, онҳо мушкилоти моро ҳал карда натавонистанд.

Мушкилоти асосӣ дар он буд, ки маҳсулоти озмоишшуда ба манбаъҳои маълумот такя карда, омори ҷойгиршавӣ аз рӯи сайтро нишон медоданд ва қобилияти ҷамъоварӣ кардани омори маъракаҳои таблиғотиро таъмин намекарданд. Чунин равиш ба мо имкон надод, ки омори сайтҳои гуногунро дар як ҷо бубинем ва вазъи маъракаро дар маҷмӯъ таҳлил кунем.

Омили дигар ин буд, ки дар марҳилаҳои аввал маҳсулот ба бозори Ғарб нигаронида шуда, ҳамгироӣ бо сайтҳои Русияро дастгирӣ намекарданд. Ва барои он сайтҳое, ки ҳамгироӣ бо онҳо амалӣ карда шудааст, на ҳама нишондиҳандаҳои зарурӣ бо тафсилоти кофӣ зеркашӣ карда мешуданд ва ҳамгироӣ на ҳамеша қулай ва шаффоф буд, хусусан вақте ки барои гирифтани чизе, ки дар интерфейси система нест, зарур буд.
Умуман, мо тасмим гирифтем, ки ба маҳсулоти тарафи сеюм мутобиқ нашавем, балки ба таҳияи худ шурӯъ кардем...

2. Бозори таблиғоти интернетӣ сол то сол афзоиш ёфта, дар соли 2018 аз нигоҳи буҷаи таблиғотӣ аз бузургтарин бозори таблиғоти телевизионии анъанавӣ пеш гузашт. Пас, як миқёс вуҷуд дорад.

3. Баръакси бозори таблиғоти телевизионӣ, ки фурӯши таблиғоти тиҷоратӣ дар инҳисорӣ қарор дорад, шумораи зиёди соҳибони инвентаризатсияи таблиғи андозаҳои гуногун дар Интернет бо суратҳисобҳои таблиғотии худ амал мекунанд. Азбаски маъракаи таблиғотӣ, чун қоида, якбора дар якчанд сайтҳо мегузарад, барои фаҳмидани вазъи маъракаи таблиғотӣ, ҳисоботҳоро аз ҳама сайтҳо ҷамъоварӣ кардан ва онҳоро дар як гузориши калон, ки тамоми тасвирро нишон медиҳад, муттаҳид кардан лозим аст. Ин маънои онро дорад, ки потенсиали оптимизатсия вуҷуд дорад.

4. Ба назари мо чунин менамуд, ки соҳибони инвентаризатсияи таблиғ дар Интернет аллакай инфрасохтори ҷамъоварии омор ва намоиши онҳо дар ҳисобҳои таблиғотиро доранд ва онҳо метавонанд барои ин маълумот API пешниҳод кунанд. Ин чунин маъно дорад, ки аз чихати техникй амалй гардондани он имконпазир аст. Дарҳол бигӯем, ки он қадар оддӣ набуд.

Умуман, барои мо тамоми шартхои амалй гардондани лоиха аён буд ва мо барои ба хаёт татбик намудани лоиха давидем...

Нақшаи бузург

Барои оғоз, мо диди системаи идеалиро ташаккул додем:

  • Маъракаҳои таблиғотии системаи корпоративии 1С бояд ба таври худкор бо номҳо, давраҳо, буҷетҳо ва ҷойгиркунӣ дар платформаҳои гуногун бор карда шаванд.
  • Барои ҳар як ҷойгиркунӣ дар маъракаи таблиғотӣ, ҳама омори имконпазир бояд ба таври худкор аз сайтҳое, ки ҷойгиркунӣ сурат мегирад, ба мисли шумораи таассуротҳо, кликҳо, диданҳо ва ғайра зеркашӣ карда шавад.
  • Баъзе маъракаҳои таблиғотӣ бо истифода аз мониторинги тарафи сеюм тавассути системаҳои ба истилоҳ таблиғ, ба монанди Adriver, Weborama, DCM ва ғайра пайгирӣ карда мешаванд. Дар Русия инчунин як ҳисобкунаки саноатии интернет мавҷуд аст - ширкати Mediascope. Тибқи нақшаи мо, маълумот аз мониторинги мустақил ва саноатӣ низ бояд ба таври худкор ба маъракаҳои таблиғотии мувофиқ бор карда шавад.
  • Аксари маъракаҳои таблиғотӣ дар Интернет ба амалҳои муайяни мақсаднок (харидан, занг задан, сабти ном ба драйви тестӣ ва ғайра) нигаронида шудаанд, ки бо истифода аз Google Analytics пайгирӣ карда мешаванд ва омори онҳо барои фаҳмидани вазъи маърака ва бояд ба асбоби мо бор карда шавад.

Гӯшти якум омехта аст

Бо назардошти ӯҳдадории мо ба принсипҳои тағйирпазири таҳияи нармафзор (чадон, ҳама чиз), мо тасмим гирифтем, ки аввал MVP-ро таҳия кунем ва сипас ба таври такрорӣ ба сӯи ҳадафи пешбинишуда ҳаракат кунем.
Мо тасмим гирифтем, ки MVP-ро дар асоси маҳсулоти худ созем DANBo (Шӯрои шабакаи Dentsu Aegis), ки як барномаи веб бо маълумоти умумӣ дар бораи маъракаҳои таблиғотии муштариёни мо мебошад.

Барои MVP, лоиҳа то ҳадди имкон аз ҷиҳати татбиқ содда карда шуд. Мо рӯйхати маҳдуди платформаҳоро барои ҳамгироӣ интихоб кардем. Инҳо платформаҳои асосӣ, аз қабили Yandex.Direct, Yandex.Display, RB.Mail, MyTarget, Adwords, DBM, VK, FB ва системаҳои асосии таблиғи Adriver ва Weborama буданд.

Барои дастрасӣ ба омор дар сайтҳо тавассути API, мо як ҳисоби ягонаро истифода бурдем. Менеҷери гурӯҳи муштариён, ки мехост ҷамъоварии автоматии оморро дар маъракаи таблиғотӣ истифода барад, бояд аввал дастрасӣ ба маъракаҳои таблиғотии заруриро дар сайтҳо ба ҳисоби платформа вогузор кунад.

Оянда корбари система аст ДАНБО бояд файли формати муайянро ба системаи Excel бор кунад, ки дар он тамоми маълумот дар бораи ҷойгиркунӣ (маъракаи таблиғотӣ, платформа, формат, давраи ҷойгиркунӣ, нишондиҳандаҳои нақшавӣ, буҷет ва ғ.) ва идентификаторҳои маъракаҳои таблиғотии мувофиқро дар бар мегирад. сайтҳо ва ҳисобкунакҳо дар системаҳои таблиғотӣ.

Рости гап, даҳшатнок менамуд:

Чӣ тавр мо маълумотро дар бораи маъракаҳои таблиғотӣ аз сайтҳои онлайн ҷамъоварӣ кардем (роҳи душвор ба маҳсулот)

Маълумоти зеркашидашуда дар махзани маълумот захира карда шуд ва сипас хадамоти алоҳида аз онҳо идентификаторҳои маъракаҳоро дар сайтҳо ҷамъоварӣ карданд ва омори онҳоро зеркашӣ карданд.

Барои ҳар як сайт, хидмати алоҳидаи Windows навишта шудааст, ки дар як рӯз як маротиба дар як ҳисоби хидматрасонӣ дар API-и сайт ворид мешуд ва оморро барои ID-ҳои маъракаи мушаххас зеркашӣ мекард. Ҳамин чиз бо системаҳои таблиғотӣ рӯй дод.

Маълумоти зеркашидашуда дар интерфейс дар шакли панели хурди фармоишӣ намоиш дода шуд:

Чӣ тавр мо маълумотро дар бораи маъракаҳои таблиғотӣ аз сайтҳои онлайн ҷамъоварӣ кардем (роҳи душвор ба маҳсулот)

Барои мо ғайричашмдошт, MVP ба кор шурӯъ кард ва ба зеркашии омори ҷорӣ дар бораи маъракаҳои таблиғотӣ дар Интернет оғоз кард. Мо системаро дар якчанд мизоҷ татбиқ кардем, аммо ҳангоми кӯшиши васеъ кардани миқёс мо ба мушкилоти ҷиддӣ дучор шудем:

  • Мушкилоти асосӣ ин мураккабии омода кардани маълумот барои бор кардан ба система буд. Инчунин, маълумоти ҷойгиркунӣ бояд пеш аз боркунӣ ба формати қатъии муқарраршуда табдил дода мешуд. Ба файли зеркашида идентификаторҳои объектҳои сайтҳои гуногун дохил кардан лозим буд. Мо бо он рӯбарӯ ҳастем, ки барои корбарони аз ҷиҳати техникӣ бетаҷриба фаҳмонидани он хеле душвор аст, ки ин идентификаторҳоро дар сайт аз куҷо пайдо кунанд ва онҳоро дар куҷо ворид кардан лозим аст. Бо дарназардошти шумораи кормандон дар шӯъбаҳое, ки маъракаҳоро дар сайтҳо мегузаронанд ва гардиш, ин боиси дастгирии зиёди мо гардид, ки мо комилан аз он қаноатманд набудем.
  • Мушкилоти дигар ин буд, ки на ҳама платформаҳои таблиғотӣ механизмҳои интиқоли дастрасӣ ба маъракаҳои таблиғотиро ба ҳисобҳои дигар доштанд. Аммо ҳатто агар механизми намояндагӣ мавҷуд бошад ҳам, на ҳама таблиғгарон омода буданд дастрасӣ ба маъракаҳои худро ба ҳисобҳои тарафи сеюм диҳанд.
  • Омили муҳим ин хашм буд, ки дар байни корбарон аз он сабаб шуд, ки ҳамаи нишондиҳандаҳои банақшагирифташуда ва тафсилоти ҷойгиркунӣ, ки онҳо аллакай ба системаи баҳисобгирии 1С ворид мекунанд, онҳо бояд дубора ворид шаванд. ДАНБО.

Ин ба мо чунин ақида дод, ки манбаи асосии маълумот дар бораи ҷойгиркунӣ бояд системаи 1С-и мо бошад, ки ба он ҳама маълумотҳо дақиқ ва саривақт ворид карда мешаванд (дар ин ҷо дар он аст, ки ҳисобнома-фактураҳо дар асоси маълумоти 1С таҳия карда мешаванд, бинобар ин ворид кардани маълумот ба 1С дуруст аст. барои ҳама KPI афзалиятнок аст). Ҳамин тавр консепсияи нави система пайдо шуд...

Консепсия

Аввалин чизе, ки мо тасмим гирифтем, ҷудо кардани системаи ҷамъоварии омор дар бораи маъракаҳои таблиғотӣ дар Интернет ба маҳсулоти алоҳида буд - D1.Digital.

Дар консепсияи нав, мо тасмим гирифтем, ки ба он бор кунем D1.Digital маълумот дар бораи маъракаҳои таблиғотӣ ва ҷойгиркунӣ дар дохили онҳо аз 1C, ва сипас оморро аз сайтҳо ва системаҳои AdServing ба ин ҷойгоҳҳо кашед. Ин бояд ҳаёти корбаронро ба таври назаррас осон кунад (ва чун маъмул, ба таҳиягарон кори бештар илова кунад) ва ҳаҷми дастгирӣро кам кунад.

Мушкилоти аввалине, ки мо дучор шудем, хусусияти ташкилӣ дошт ва бо он алоқаманд буд, ки мо калид ё аломатеро пайдо карда натавонистем, ки тавассути он объектҳои системаҳои гуногунро бо маъракаҳо ва ҷойгиркунӣ аз 1С муқоиса кунем. Гап дар он аст, ки раванд дар ширкати мо тавре тарҳрезӣ шудааст, ки маъракаҳои таблиғотӣ аз ҷониби одамони гуногун ба системаҳои гуногун ворид карда мешаванд (банақшагирии медиа, харид ва ғайра).

Барои ҳалли ин мушкилот, ба мо лозим омад, ки калиди беҳамтои ҳаширо, DANBoID-ро ихтироъ кунем, ки объектҳоро дар системаҳои гуногун бо ҳам мепайвандад ва онро дар маҷмӯаҳои додаҳои зеркашида хеле осон ва беназир муайян кардан мумкин аст. Ин идентификатор дар системаи дохилии 1C барои ҳар як ҷойгиркунии инфиродӣ тавлид мешавад ва ба маъракаҳо, ҷойгиркунӣ ва ҳисобкунакҳо дар ҳама сайтҳо ва дар ҳама системаҳои AdServing интиқол дода мешавад. Татбиқи амалияи гузоштани DANBoID дар ҳама ҷойгоҳҳо каме вақт гирифт, аммо мо тавонистем онро иҷро кунем :)

Пас аз он мо фаҳмидем, ки на ҳама сайтҳо API барои ҷамъоварии автоматии омор доранд ва ҳатто онҳое, ки API доранд, он ҳама маълумоти заруриро барнамегардонад.

Дар ин марҳила, мо тасмим гирифтем, ки рӯйхати платформаҳоро барои ҳамгироӣ ба таври назаррас коҳиш диҳем ва ба платформаҳои асосӣ, ки дар аксарияти маъракаҳои таблиғотӣ иштирок мекунанд, тамаркуз кунем. Ин рӯйхат ҳама бузургтарин бозигарони бозори таблиғ (Google, Yandex, Mail.ru), шабакаҳои иҷтимоӣ (VK, Facebook, Twitter), системаҳои асосии AdServing ва таҳлилӣ (DCM, Adriver, Weborama, Google Analytics) ва платформаҳои дигарро дар бар мегирад.

Аксарияти сайтҳое, ки мо интихоб кардем, API доштанд, ки ченакҳои лозимиро таъмин мекарданд. Дар ҳолатҳое, ки API вуҷуд надошт ё он маълумоти заруриро дар бар намегирад, мо гузоришҳоеро истифода мебурдем, ки ҳамарӯза ба почтаи электронии офиси мо барои бор кардани маълумот фиристода мешаванд (дар баъзе системаҳо ин гуна ҳисоботҳоро танзим кардан мумкин аст, дар баъзе системаҳо мо дар бораи таҳияи чунин гузоришҳо барои мо).

Ҳангоми таҳлили маълумот аз сайтҳои гуногун, мо фаҳмидем, ки иерархияи объектҳо дар системаҳои гуногун яксон нест. Гузашта аз ин, иттилоот бояд аз системаҳои гуногун тафсилоти гуногун зеркашӣ карда шавад.

Барои ҳалли ин мушкилот консепсияи SubDANBoID таҳия карда шуд. Идеяи SubDANBoID хеле содда аст, мо объекти асосии маъракаро дар сайт бо DANBoID-и тавлидшуда қайд мекунем ва мо ҳама объектҳои лонаро бо идентификаторҳои беназири сайт бор мекунем ва SubDANBoID-ро мувофиқи принсипи DANBoID + идентификатори дараҷаи аввал мегузорем. объекти лона + идентификатори сатҳи дуюми объекти лона +... Ин равиш ба мо имкон дод, ки маъракаҳои таблиғотиро дар системаҳои гуногун пайваст кунем ва омори муфассалро дар бораи онҳо зеркашӣ кунем.

Мо инчунин бояд мушкилоти дастрасӣ ба маъракаҳоро дар платформаҳои гуногун ҳал кунем. Тавре ки мо дар боло навиштем, механизми додани дастрасӣ ба маърака ба ҳисоби алоҳидаи техникӣ на ҳама вақт татбиқ карда мешавад. Аз ин рӯ, мо маҷбур шудем, ки инфрасохтори авторизатсияи худкор тавассути OAuth бо истифода аз токенҳо ва механизмҳои навсозии ин нишонаҳо таҳия кунем.

Баъдтар дар мақола мо кӯшиш хоҳем кард, ки меъмории ҳалли масъала ва ҷузъиёти техникии татбиқро муфассалтар шарҳ диҳем.

Архитектураи ҳалли 1.0

Ҳангоми оғоз кардани татбиқи маҳсулоти нав, мо фаҳмидем, ки мо бояд фавран имконияти пайваст кардани сайтҳои навро таъмин кунем, аз ин рӯ мо тасмим гирифтем, ки роҳи меъмории микросервисро пайгирӣ кунем.

Ҳангоми тарҳрезии меъморӣ, мо пайвасткунакҳоро ба ҳама системаҳои беруна - 1С, платформаҳои таблиғотӣ ва системаҳои таблиғотӣ - ба хидматҳои алоҳида ҷудо кардем.
Идеяи асосӣ ин аст, ки ҳама пайвасткунакҳо ба сайтҳо як API доранд ва адаптерҳо мебошанд, ки API-и сайтро ба интерфейси барои мо мувофиқ меоранд.

Дар маркази маҳсулоти мо веб-барнома ҷойгир аст, ки он як монолит аст, ки тавре тарҳрезӣ шудааст, ки онро ба осонӣ ба хидматҳо тақсим кардан мумкин аст. Ин барнома барои коркарди маълумоти зеркашидашуда, ҷамъбасти омори системаҳои гуногун ва пешниҳоди онҳо ба корбарони система масъул аст.

Барои иртибот байни пайвасткунакҳо ва барномаи веб, мо бояд хидмати иловагӣ эҷод кунем, ки мо онро Connector Proxy номидем. Он вазифаҳои кашфи хидмат ва ҷадвали вазифаҳоро иҷро мекунад. Ин хидмат ҳар шаб вазифаҳои ҷамъоварии маълумотро барои ҳар як пайвасткун иҷро мекунад. Навиштани қабати хидматрасонӣ нисбат ба пайваст кардани брокери паём осонтар буд ва барои мо ҳарчи зудтар ба даст овардани натиҷа муҳим буд.

Барои содда ва суръати рушд, мо инчунин қарор додем, ки ҳама хидматҳо Web API-ҳо хоҳанд буд. Ин имкон дод, ки далели консепсия зуд ҷамъоварӣ карда шавад ва тафтиш карда шавад, ки тамоми тарҳ кор мекунад.

Чӣ тавр мо маълумотро дар бораи маъракаҳои таблиғотӣ аз сайтҳои онлайн ҷамъоварӣ кардем (роҳи душвор ба маҳсулот)

Вазифаи алоҳида ва хеле мураккаб таъсис додани дастрасӣ барои ҷамъоварии маълумот аз ҳисобҳои гуногун буд, ки, тавре ки мо тасмим гирифтем, бояд аз ҷониби корбарон тавассути интерфейси веб анҷом дода шавад. Он аз ду марҳилаи алоҳида иборат аст: аввал, корбар барои дастрасӣ ба ҳисоб тавассути OAuth нишона илова мекунад ва сипас ҷамъоварии маълумотро барои муштарӣ аз ҳисоби мушаххас танзим мекунад. Гирифтани нишона тавассути OAuth зарур аст, зеро тавре ки мо аллакай навишта будем, на ҳама вақт имкони додани дастрасӣ ба ҳисоби дилхоҳ дар сайт имконпазир аст.

Барои эҷоди як механизми универсалии интихоби ҳисоб аз сайтҳо, мо бояд ба API пайвасткунакҳо усуле илова кунем, ки JSON Schema-ро бармегардонад, ки он бо истифода аз ҷузъҳои тағирёфтаи JSONEditor ба форма дода мешавад. Бо ин роҳ, корбарон тавонистанд ҳисобҳоеро интихоб кунанд, ки аз онҳо маълумотро зеркашӣ кунанд.

Барои риоя кардани маҳдудиятҳои дархосте, ки дар сайтҳо мавҷуданд, мо дархостҳоро барои танзимот дар дохили як нишона муттаҳид мекунем, аммо мо метавонем аломатҳои гуногунро дар баробари коркард коркард кунем.

Мо MongoDB-ро ҳамчун нигаҳдории маълумоти боршуда ҳам барои веб замимаҳо ва ҳам пайвасткунакҳо интихоб кардем, ки ба мо имкон дод, ки дар бораи сохтори додаҳо дар марҳилаҳои ибтидоии таҳия, вақте ки модели объекти барнома ҳар рӯз тағйир меёбад, аз ҳад зиёд хавотир нашавем.

Мо ба зудӣ фаҳмидем, ки на ҳама маълумотҳо дар MongoDB мувофиқанд ва масалан, нигоҳ доштани омори ҳаррӯза дар пойгоҳи додаҳои релятсионӣ қулайтар аст. Аз ин рӯ, барои пайвасткунакҳое, ки сохтори додаҳояшон барои пойгоҳи додаҳои релятсионӣ мувофиқтар аст, мо ба истифодаи PostgreSQL ё MS SQL Server ҳамчун анбор оғоз кардем.

Меъморӣ ва технологияҳои интихобшуда ба мо имкон доданд, ки маҳсулоти D1.Digital-ро нисбатан зуд сохта ва ба кор андозем. Дар тӯли ду соли таҳияи маҳсулот, мо 23 пайвасткунакро ба сайтҳо таҳия кардем, таҷрибаи бебаҳои кор бо API-ҳои тарафи сеюм ба даст овардем, пешгирӣ кардани домҳои сайтҳои гуногунро омӯхтем, ки ҳар яки онҳо ба худ хос буданд ва ба рушди API ҳадди аққал 3 саҳм гузоштанд. сайтҳо, ба таври худкор маълумотро дар бораи тақрибан 15 маъракаҳо ва барои беш аз 000 ҷойгиркунӣ зеркашӣ карданд, аз корбарон дар бораи фаъолияти маҳсулот фикру мулоҳизаҳои зиёде ҷамъоварӣ карданд ва дар асоси ин фикру мулоҳизаҳо тавонистанд, ки раванди асосии маҳсулотро якчанд маротиба тағйир диҳанд.

Архитектураи ҳалли 2.0

Аз огози тараккиёт ду сол гузашт D1.Digital. Афзоиши доимии сарборӣ ба система ва пайдоиши бештари манбаҳои нави маълумот тадриҷан мушкилотро дар меъмории ҳалли мавҷуда ошкор кард.

Мушкилоти аввал ба миқдори маълумоте, ки аз сайтҳо зеркашӣ карда мешавад, алоқаманд аст. Мо бо он дучор шудем, ки ҷамъоварӣ ва навсозии тамоми маълумоти зарурӣ аз сайтҳои калонтар вақти зиёдро талаб мекард. Масалан, ҷамъоварии маълумот аз системаи таблиғи AdRiver, ки бо он мо омори аксари ҷойгиркуниро пайгирӣ мекунем, тақрибан 12 соатро мегирад.

Барои ҳалли ин мушкилот, мо истифодаи ҳама намуди ҳисоботҳоро барои зеркашии маълумот аз сайтҳо оғоз кардем, мо кӯшиш мекунем, ки API-и онҳоро якҷоя бо сайтҳо таҳия кунем, то суръати кори он ба ниёзҳои мо ҷавобгӯ бошад ва зеркашии маълумотро ба қадри имкон параллел созем.

Мушкилоти дигар ба коркарди маълумоти зеркашидашуда марбут аст. Ҳоло, вақте ки омори нави ҷойгиркунӣ ворид мешавад, як раванди бисёрмарҳалаи аз нав ҳисоб кардани метрика оғоз мешавад, ки он боркунии маълумоти хом, ҳисобкунии ченакҳои ҷамъшуда барои ҳар як сайт, муқоисаи маълумот аз сарчашмаҳои гуногун бо ҳамдигар ва ҳисобкунии ченакҳои ҷамъбастии маъракаро дар бар мегирад. Ин боиси сарбории зиёди веб-барнома мегардад, ки ҳама ҳисобҳоро анҷом медиҳад. Якчанд маротиба, дар ҷараёни ҳисобкунии дубора, барнома тамоми хотираи серверро, тақрибан 10-15 ГБ истеъмол кард, ки ин ба кори корбарон бо система таъсири бадтар расонд.

Мушкилоти муайяншуда ва нақшаҳои шӯҳратпараст оид ба рушди минбаъдаи маҳсулот моро ба зарурати аз нав дида баромадани меъмории барнома водор карданд.

Мо бо пайвасткунакҳо оғоз кардем.
Мо пай бурдем, ки ҳама пайвасткунакҳо мувофиқи як модел кор мекунанд, аз ин рӯ мо чаҳорчӯбаи қубур сохтем, ки дар он барои сохтани пайвасткунак шумо танҳо мантиқи қадамҳоро барномарезӣ кардан лозим буд, боқимондааш универсалӣ буд. Агар ягон пайвасткунак такмилро талаб кунад, мо онро фавран ба чаҳорчӯбаи нав ҳамзамон ҳангоми такмил додани пайвасткунак интиқол медиҳем.

Ҳамзамон мо ба ҷойгиркунии пайвасткунакҳо ба Docker ва Kubernetes шурӯъ кардем.
Мо гузаштан ба Кубернетесро муддати тӯлонӣ ба нақша гирифта будем, бо танзимоти CI/CD озмоиш кардем, аммо танҳо вақте ба ҳаракат оғоз кардем, ки як пайвасткунак бо сабаби хатогӣ беш аз 20 ГБ хотираи серверро истеъмол кард ва амалан равандҳои дигарро нобуд кард. . Ҳангоми тафтишот, пайвасткунак ба кластери Kubernetes интиқол дода шуд, ки дар ниҳоят ҳатто пас аз ислоҳи хатогӣ он ҷо боқӣ монд.

Мо хеле зуд фаҳмидем, ки Kubernetes қулай аст ва дар давоми шаш моҳ мо 7 пайвасткунак ва Connectors Proxy-ро, ки захираҳои бештарро истеъмол мекунанд, ба кластери истеҳсолӣ интиқол додем.

Пас аз пайвасткунакҳо, мо тасмим гирифтем, ки меъмории боқимондаи барномаро тағир диҳем.
Мушкилоти асосӣ дар он буд, ки маълумот аз пайвасткунакҳо ба проксиҳо дар партияҳои калон меояд ва сипас ба DANBoID меафтад ва ба веб-барномаи марказӣ барои коркард фиристода мешавад. Аз сабаби шумораи зиёди аз нав ҳисобкунии метрикҳо, дар барнома сарбории калон вуҷуд дорад.

Мониторинги ҳолати кори ҷамъоварии маълумотҳои инфиродӣ ва гузориш додани хатогиҳо дар дохили пайвасткунакҳо ба як барномаи марказии веб хеле душвор буд, то корбарон бубинанд, ки чӣ рӯй дода истодааст ва чаро маълумот ҷамъ карда намешавад.

Барои ҳалли ин мушкилот мо меъмории 2.0-ро таҳия кардем.

Фарқи асосии байни версияи нави меъморӣ дар он аст, ки мо ба ҷои Web API, барои мубодилаи паёмҳо байни хидматҳо RabbitMQ ва китобхонаи MassTransit истифода мебарем. Барои ин, мо маҷбур шудем, ки Connectors Proxy-ро қариб пурра аз нав нависем ва онро Connectors Hub табдил диҳем. Ном иваз карда шуд, зеро нақши асосии хадамот дигар на дар ирсоли дархостҳо ба пайвасткунакҳо ва бозгашт, балки дар идоракунии ҷамъоварии ченакҳо аз пайвасткунакҳо мебошад.

Аз веб-барномаи марказӣ, мо маълумотро дар бораи ҷойгиркунӣ ва омор аз сайтҳо ба хидматҳои алоҳида ҷудо кардем, ки ин имкон дод, ки аз ҳисобҳои такрории нолозим халос шавем ва танҳо омори аллакай ҳисобшуда ва ҷамъшударо дар сатҳи ҷойгиркунӣ нигоҳ дорем. Мо инчунин мантиқи ҳисобкунии омори асосиро дар асоси маълумоти хом аз нав навишта ва оптимизатсия кардем.

Ҳамзамон, мо ҳама хидматҳо ва барномаҳоро ба Docker ва Kubernetes интиқол медиҳем, то миқёсро осонтар ва идоракуниро қулай гардонем.

Чӣ тавр мо маълумотро дар бораи маъракаҳои таблиғотӣ аз сайтҳои онлайн ҷамъоварӣ кардем (роҳи душвор ба маҳсулот)

Мо ҳоло дар куҷоем

Маҳсулоти меъмории исботи консепсия 2.0 D1.Digital омода ва кор дар муҳити санҷиш бо маҷмӯи маҳдуди пайвасткунакҳо. Танҳо ин аст, ки боз 20 пайвасткунаки дигарро ба платформаи нав нависед, санҷед, ки маълумот дуруст бор карда шудааст ва ҳама ченакҳо дуруст ҳисоб карда шудаанд ва тамоми тарҳро дар истеҳсолот паҳн кунед.

Дарвоқеъ, ин раванд тадриҷан сурат мегирад ва мо бояд мутобиқати ақибро бо API-ҳои кӯҳна тарк кунем, то ҳама чиз кор кунад.

Нақшаҳои фаврии мо таҳияи пайвасткунакҳои нав, ҳамгироӣ бо системаҳои нав ва илова кардани ченакҳои иловагӣ ба маҷмӯи маълумоти зеркашидашуда аз сайтҳои пайвастшуда ва системаҳои таблиғотиро дар бар мегиранд.

Мо инчунин нақша дорем, ки ҳама барномаҳо, аз ҷумла веб-барномаи марказиро ба Docker ва Kubernetes интиқол диҳем. Дар якҷоягӣ бо меъмории нав, ин ҷойгиркунӣ, назорат ва назорати захираҳои истеъмолшударо ба таври назаррас содда мекунад.

Идеяи дигар ин озмоиш бо интихоби пойгоҳи додаҳо барои нигоҳдории омор аст, ки айни замон дар MongoDB нигоҳ дошта мешавад. Мо аллакай якчанд пайвасткунакҳои навро ба пойгоҳи додаҳои SQL интиқол додем, аммо дар он ҷо фарқият қариб ноаён аст ва барои омори ҷамъшуда дар рӯз, ки мумкин аст барои давраи худсарона дархост карда шавад, фоида метавонад хеле ҷиддӣ бошад.

Умуман, нақшаҳо бузурганд, биёед идома диҳем :)

Муаллифони мақолаи R&D Dentsu Aegis Network Russia: Георгий Остапенко (шмиига), Михаил Коцик (hitexx)

Манбаъ: will.com

Илова Эзоҳ