Bagaimana kami mengeluarkan penipuan dari pondok

Nama saya Nikita, saya adalah pengembang backend dari tim antifraud di Citimobil. Hari ini saya akan membagikan kepada Anda sebuah kisah tentang bagaimana kami memindahkan layanan kami dari monolit ke layanan terpisah, bagaimana kami sampai pada keputusan ini dan masalah apa yang kami temui.


Untuk memulai, saya akan berbicara sedikit tentang layanan kami.


Antifraud 101


Antifraud kami adalah seperangkat aturan untuk mengidentifikasi pesanan yang mengandung tanda-tanda penipuan, pola penipuan.


Contoh Penipuan Mengemudi

, , , - . , n . , , , .


. - , .


, , .


:


  1. / - (, ).
  2. 1..n .
  3. : , .

web- — «». web- .


: , , , . .



- .


PHP . , . , .


«» , : , , .


. , , , JOIN- , .


, . « » ( ).


:


  • , . .
  • , .

. Golang, .


.


:


(, , ). , . .


, .


: 6 , 25 .


:


OLTP- , OLAP- . , «».


:


  1. SQL ( ) , ClickHouse’ .
  2. Elastic’.

Elastic. , « » , . , JOIN’ Elastic’.


Elastic , . Elastic . 2xx. (, ), allow_partial_search_results.



, , , , MySQL. RabbitMQ, .


RabbitMQ, , . .


, MySQL, , Elastic, . lock Redise, , , . .



REST API.


.



:


  1. Elastic , , refresh , . , ?
  2. MySQL ?

.

RabbitMQ ( ), — (retry).


producer, consumer’. dead-letter: TTL , .


, , , retry-, . , .


.

— refresh . Elasticsearch , .


: , . , , . , , .


, , ? , - , . , retry-?


TTL retry- Elastic, .


dead-letter .



: . 100% . testify, mock’ . , .



, . -, .


, , , NDA. .


, , , .

Source: https://habr.com/ru/post/undefined/


All Articles