Sobes.tech

Golang

Jeśli jeden z serwisów, z którego korzystasz, zwróci błąd, co zrobisz i jak to obsłużysz, mając kanał?

175

Jak zorganizowano miękką rezerwację sald (soft hold) z końcową weryfikacją przy potwierdzeniu rezerwacji?

172

Fasada korzysta z 10 usług wewnętrznych (każda 100-300 ms) oraz z globalnej usługi w Chinach (500 ms), łączny czas odpowiedzi wynosi około 3,5 sekundy. Jak rozwiązałbyś ten problem, aby przyspieszyć przetwarzanie?

172

Czy na wejściu miałeś jeden serwis-gateway, z którym komunikowali się wszyscy partnerzy (B2B)? W ilu instancjach on działał?

171

Jak zrobić, żeby w ogóle nie iść do serwisu, który na pewno się zawali lub będzie niedostępny?

166

Czy Redis przechowywał dane wyłącznie w pamięci, czy był fallback na dysk? Co się stanie, jeśli Redis się zawiesi?

166

Czy boisz się śledzenia czasu? Dlaczego?

164

Jeśli masz duże zadanie, na przykład plik o rozmiarze 10 GB z ustawieniami linia po linii, i musisz przetworzyć każdą linię (np. postawić kropkę na końcu), czy goroutines pomogłyby przyspieszyć tę pracę?

163

Ile centrów danych miałeś: jedno czy kilka?

163

Ile kanałów byłoby potrzebnych do zorganizowania tego mechanizmu, jeśli używa się kanałów do zbierania wyników od usług?

163

W języku Go istnieją goroutines — lekkie wątki. Czy możesz wyjaśnić, jak rozumiesz, kiedy należy używać goroutine, a kiedy nie?

162

Jak obliczano RPS — po prostu sumowałeś obciążenie wszystkich dźwigni, czy jak?

161

Jak zaimplementowałeś atomowość zapisu w Redis? Jakiego algorytmu użyłeś (skrypt Lua)?

161

Jeśli wykonujesz synchroniczne zapytanie do bazy danych lub sąsiedniej usługi, a zapytanie trwa 5 sekund, co się stanie z wątkiem systemu operacyjnego, na którym uruchomiona jest usługa, podczas gdy zapytanie jest wykonywane?

158

Jak zidentyfikować wąskie gardło podczas przetwarzania pliku — jeśli przetwarzanie linia po linii wydaje się wolne, a goroutines przetwarzają w pętli?

158

Co byś przesłał w tym kanale (jaką strukturę danych)?

154

Czy usługa po prostu udostępniała dane z pamięci podręcznej, czy wykonywała jeszcze jakąś logikę?

152

Może warto zacząć używać goroutine, aby zwiększyć prędkość, na przykład dziesięciokrotnie przy użyciu dziesięciu goroutine?

152

Mówiłeś, że masz usługę, która słucha Kafka i aktualizuje cache w Redis, prawda?

150
/3