Una reuni贸n dedicada a escalar aplicaciones en PostgreSQL se llevar谩 a cabo en la oficina de Avito el 15 de septiembre. Hablemos sobre los algoritmos y los matices de implementar la transaccionalidad en lenguajes de programaci贸n, construir transacciones comerciales en servicios con una base de datos por patr贸n de servicio, c贸mo se organiza OZO: biblioteca de cliente PostgreSQL as铆ncrona de tipo seguro para C ++ 17 y niveles de aislamiento de transacciones PostgreSQL. Las presentaciones ser谩n realizadas por Stas Kelvich (profesional de Postgres), Sergey Handrikov (Yandex), Konstantin Evteev (Avito) y Mikhail Tyurin. Reg铆strese para una reuni贸n e invite a colegas. Debajo del corte: res煤menes de discursos de oradores, un enlace al registro e informaci贸n sobre c贸mo transmitir un mitap.

Informes
Transacciones distribuidas y viajes en el tiempo. Stas Kelvich, profesional de Postgres

"La discusi贸n se basar谩 en el art铆culo" Clock-SI: aislamiento de instant谩neas para almacenes de datos particionados utilizando relojes sincronizados libremente "por Jiaqing Du, Sameh Elnikety y Willy Zwaenepoel. Intentaremos comprender el protocolo Clock-SI, tambi茅n hablaremos sobre los algoritmos existentes y los matices de la implementaci贸n de la transaccionalidad en lenguajes de programaci贸n (por ejemplo, memoria transaccional de software en Clojure) y bases de datos (desde IBM System-R hasta Google Spanner); por qu茅 los niveles de aislamiento descritos en ANSI SQL reflejan d茅bilmente la realidad y tocaremos el tema de las anomal铆as transaccionales ".
Escalar una aplicaci贸n en PostgreSQL en Avito: consejos y trucos. Konstantin Evteev, Avito

鈥淨uiero hablar sobre las soluciones de la comunidad que implementamos en la arquitectura de Avito para escalar nuestra aplicaci贸n a cargas en constante crecimiento.
Le contar茅 sobre el cach茅 "inteligente de dos niveles" para un uso m谩s eficiente del modo de espera.
Compartir茅 una historia sobre la experiencia de Avito en la resoluci贸n de uno de los desaf铆os de la arquitectura de microservicios: la implementaci贸n de transacciones comerciales mientras se mantiene la consistencia de datos entre los servicios que utilizan el patr贸n arquitect贸nico de Base de datos por servicio "
Replicaci贸n l贸gica y niveles de aislamiento de transacciones PostgreSQL. Mikhail Tyurin

鈥淒esde la d茅cima versi贸n de PostgreSQL, adem谩s de la replicaci贸n f铆sica, tambi茅n tenemos acceso a la l贸gica integrada. Adem谩s, las soluciones de replicaci贸n de l贸gica de activaci贸n existen y se aplican con 茅xito durante muchos a帽os. Por otro lado, relativamente recientemente, desde la versi贸n 9.1, tenemos transacciones con un nivel "honesto" de serializable. "Estas dos circunstancias importantes (as铆 como los debates en Internet) llevaron al autor a revisar el problema del uso de niveles de aislamiento con varios m茅todos de replicaci贸n existentes, incluido el examen de la presencia de Serializable en una r茅plica".
OZO es una biblioteca de cliente PostgreSQL as铆ncrona de tipo seguro con encabezado solo para C ++ 17. Sergey Handrikov, Yandex

鈥淟a biblioteca est谩 construida sobre la base de Boost.Asio, gracias a la cual proporciona soporte para todos los tipos de asincron铆a, desde devoluciones de llamada hasta la rutina. La biblioteca se comunica con PostgeSQL usando libpq y un protocolo binario, proporcionando tanto la recepci贸n as铆ncrona de datos como el env铆o as铆ncrono de una solicitud. OZO admite constructores de consultas en tiempo de compilaci贸n y la posibilidad de su configuraci贸n en tiempo de ejecuci贸n. Todos los par谩metros de consulta se serializan autom谩ticamente en una representaci贸n binaria. Los resultados de la ejecuci贸n de consultas tambi茅n se deserializan autom谩ticamente en tipos simples y estructuras adaptadas con Boost.Fusion y Boost.Hana ".
Horario
12:00 - 12:30 - Registro
12:30 - 13:15 - Transacciones distribuidas y viajes en el tiempo - Stas Kelvich, Postgres Professional
13:25 - 14:05 - PG Saga: cambios de datos dependientes en varios servicios sin compromisos de dos fases y dependencias sincr贸nicas - Konstantin Evteev, Avito
14:05 - 14:35 - Descanso
14:35 - 15:20 - Replicaci贸n l贸gica y niveles de aislamiento de transacciones PostgreSQL - Mikhail Tyurin
15:20 - 16:10 - OZO - cliente de PostgreSQL as铆ncrono de tipo seguro con encabezado de biblioteca solo para C ++ 17 - Sergey Handrikov, Yandex
16:30 - ........ - afterparty
C贸mo llegar y d贸nde mirar
La participaci贸n en el evento es gratuita, pero debe registrarse . Indique su nombre completo como en su pasaporte y lleve documentos con usted, de lo contrario no podr谩 ingresar a nuestra oficina.
Direcci贸n: oficina Avito, Lesnaya 7 .
Busque un enlace a la transmisi贸n en vivo de la metap el d铆a del evento en el canal AvitoTech de YouTube.