Sobes.tech

Java

Izskaidrojiet dubultās pārbaudes metodes darbības principu daudzprocesu programmēšanas kontekstā.

Middle — Middle+
124

/* Uzņēmums nodrošina masu paziņojumu sūtīšanas pakalpojumu citiem uzņēmumiem. Jums vērsās produkta īpašnieks ar uzdevumu izveidot filtrēšanas sistēmu, ņemot vērā lietotāju preferences. ## Definīcijas Paziņojums: - paziņojuma ID - paziņojuma tips (EPASTS, SMS, PUSH) - saņēmējs (lietotāja ID) - ziņojuma teksts Saņēmējs var būt iestatījis preferences: - atļautie paziņojumu kanāli (saraksts ar tipiem) - bloķētie sūtītāji (saraksts ar sūtītāju ID) Sūtījumu vēsture: - saraksts ar sūtītajiem paziņojumiem lietotājam ## Svarīgi Lietotāju iestatījumi un sūtījumu vēsture tiek nodrošināta ar citu sistēmas komponentu palīdzību. Jums jāizstrādā šo datu saņemšanas līgumi. Glabāšanas īstenošana nav nepieciešama. ## Uzdevums Izstrādāt paziņojumu filtrēšanas sistēmu, kas: - pieņem ievadē sarakstu ar paziņojumiem filtrēšanai un sūtītāja ID - izslēdz paziņojumus, kas neatbilst lietotāja preferencēm - īsteno aizsardzību pret dublikātu ziņojumiem, ieskaitot tos, kas nosūtīti pēdējās 24 stundās. Dublikāti tiek uzskatīti par ziņojumiem ar vienādu ID, adresēti vienam lietotājam - atgriež filtrētu paziņojumu sarakstu, kas ir gatavs nosūtīšanai. Paziņojumu sūtīšana nav jūsu uzdevums – to veiks cita komanda. Jūsu uzdevums ir tikai filtrēšana. */ class NotificationFilter { UserSettingsService userSettingsService; NotificationHistoryService notificationHistoryService; public ??? filter(??? senderId, List<???> msgs) { // TODO implement } } interface UserSettingsService { // TODO any functions } interface NotificationHistoryService { // TODO any functions }

Senior
Яндекс
124

Vai jums ir pieredze SQL vaicājumu optimizācijā? Vai jūs spējat analizēt vaicājuma plānu?

Senior
Heads and Hands
124

Kāda ir objektorientētās programmēšanas nozīme programmatūras sistēmu izstrādē?

Junior — Middle
Ifellow
124

Kādus lēmumus jums nācās pieņemt, mainot vai ieviešot tehnoloģiju steku? Sniedziet piemēru.

Senior
ИП Ганус Александр Андреевич
124

Kāda veida HTTP pieprasījums būtu jāizmanto, lai saņemtu klienta datus pēc kartes numura caur API?

Junior — Middle
ОТП БанкОТП Банк
124

Vai esi gatavs praktiskām intervijām un zini, kā atbildēt uz tipiskajiem jautājumiem, kas sastopami reālajā darba pieņemšanas sistēmā?

Junior — Middle
124

Kādi ir priekšrocības un trūkumi, izmantojot Prototype Scope sistēmu projektēšanā?

Junior — Middle
124

Kā organizēt darījuma vai operācijas atcelšanu izplatītā sistēmā, izmantojot mikroservisus?

Middle — Middle+
124

Kādi ir funkciju sadalīšanas koda priekšrocības un trūkumi?

Junior — Middle
СБЕРСБЕР
124

Pastāstiet par jauniešu mentorēšanu — kā tas izskatījās?

Senior
Росгосстрах
124

Kādos gadījumos būtu jāizmanto @Service anotācija izstrādājamajā lietojumprogrammā?

Junior — Middle
СБЕРСБЕР
124

Kāpēc vienlaikus tika izmantoti divi ziņojumu starpnieki — Kafka un RabbitMQ?

Senior
СБЕРСБЕР
124

Kādus indeksu veidus pazīsti PostgreSQL? Pastāsti par B-tree indeksu, kā tas ir uzbūvēts. Kas ir GIN indekss?

Senior
Сбер Право
124

Integer i = 300, j = 300; System.out.println(i == j);

Senior
Velenes.Tech
124

Kā veicāt izmaiņas datu bāzē ražošanā? Vai izmantojāt Liquibase?

Senior
Ecom.tech
124

Kāda ir atšķirība starp map un flatMap Stream API?

Senior
SSP Soft
124

Kādu redzamības līmeni būtu jānorāda kontrolierim, lai tas varētu uzraudzīt pieprasījumu izpildi?

Junior — Middle
ГазпромбанкГазпромбанк
124

Kas ir REST un kā tas atšķiras no parastas HTTP API?

Senior
kode.ru
124

Kas var izraisīt datu ievietošanas ātruma pasliktināšanos datu bāzē pēc indeksu izveides?

Junior — Middle
Т-БанкТ-Банк
124
/726