Πώς είναι δομημένο εσωτερικά (στη μνήμη) το interface στο Go;
Golang
Πώς διασφαλίζετε τη συνέπεια των δεδομένων — ότι το μήνυμα θα αποθηκευτεί στη βάση δεδομένων και θα παραδοθεί στον παραλήπτη;
Έχεις ερωτήσεις για εμάς;
Τι είναι το πρωτόκολλο HTTP; Από ποια μέρη αποτελείται ένα αίτημα HTTP; Τι είναι οι επικεφαλίδες, τα cookies;
Ποια είναι η διαφορά μεταξύ TCP και UDP; Γιατί χρησιμοποιείται το TCP για το HTTPS;
Υπήρχαν πόνοι με το διαχωρισμό μιας ενιαίας βάσης δεδομένων;
Τι συμβαίνει στο δίκτυο όταν εισάγετε https://wildberries.ru στο πρόγραμμα περιήγησης; Περιγράψτε τη διαδικασία επίλυσης DNS.
Τι πρέπει να κάνουμε για να δεις μια υψηλή πολιτισμό μηχανικής;
Πες μια εισαγωγή — με τι ασχολείσαι τελευταία, τι ενδιαφέρον ή μη ενδιαφέρον έχεις κάνει;
Τι είναι η μεταβλητή GOMAXPROCS στο Go; Μπορεί ένα πρόγραμμα να χρησιμοποιήσει περισσότερα νήματα από αυτά που ορίζονται στο GOMAXPROCS;
Όρος Έχουμε μια βάση δεδομένων με κωδικούς χρηστών, οι κωδικοί είναι hash-αρισμένοι (λειτουργία hashPassword), και επίσης γνωρίζουμε το σύνολο χαρακτήρων που μπορούν να χρησιμοποιηθούν στους κωδικούς (μεταβλητή alphabet). Το καθήκον μας είναι να υλοποιήσουμε τη λειτουργία RecoverPassword ώστε να ανακτήσει τον κωδικό από το γνωστό hash και το TestRecoverPassword να ολοκληρωθεί με επιτυχία. Βασικές απαιτήσεις: Οποιαδήποτε μέθοδος επιτρέπεται package main import ( "crypto/md5" "fmt" ) var alphabet = []rune{'a', 'b', 'c', 'd', '1', '2', '3'} func RecoverPassword(h []byte) string { return "" } func hashPassword(in string) []byte { h := md5.Sum([]byte(in)) return h[:] } func main() { tests := []string{"a", "12", "abc333d"} ok := true for _, exp := range tests { h := hashPassword(exp) act := RecoverPassword(h) if act != exp { fmt.Printf("Σφάλμα: αναμενόταν %q, λαμβάνεται %q\n", exp, act) ok = false } } if ok { fmt.Println("Όλα τα τεστ πέρασαν επιτυχώς") } }
Προτείνετε βέλτιστους δείκτες για ένα ερώτημα με φιλτράρισμα στα πεδία τοποθεσίας και φύλου (gender) για μέγιστη απόδοση
Επίπεδο δυσκολίας: ΕΥΚΟΛΟ Δίνεται ένας ταξινομημένος πίνακας αριθμών, στον οποίο υπάρχουν διπλότυπα. Πρέπει να αφαιρέσετε τα διπλότυπα in-place (αμέσως στον αρχικό πίνακα) και να επιστρέψετε το μέγεθος του τελικού πίνακα. Παράδειγμα: Είσοδος: nums = [0,0,1,1,1,2,2,3,3,4] Έξοδος: 5, nums = [0,1,2,3,4,_,_,_,_,_] Επεξήγηση: Σε αυτόν τον πίνακα υπάρχουν 5 μοναδικά στοιχεία. Τοποθετήστε τα στις πρώτες πέντε θέσεις του αρχικού πίνακα και επιστρέψτε τον αριθμό 5. Τα επόμενα στοιχεία στον αρχικό πίνακα μπορεί να είναι οτιδήποτε.
Ποιος είναι ο σκοπός ενός διαμεσολαβητή μηνυμάτων (Kafka); Πώς εντάσσεται στην αρχιτεκτονική;
Πώς λειτουργεί η κληρονομιά των πλαισίων στο Go (context.WithValue, context.Background);
Πώς διασφαλίζετε τη σειρά των μηνυμάτων στη συνομιλία;
Τι είναι ένα JWT token; Ποια είναι η δομή του και πλεονεκτήματα έναντι των συνηθισμένων tokens;
Πώς χρησιμοποιήσατε Kafka και RabbitMQ ως brokers; Γιατί δύο;
Ποια μέσα συγχρονισμού των goroutines υπάρχουν στο Go; Διόρθωσε το παράδειγμα με τον αγώνα χρησιμοποιώντας atomic
Ποιες primitive συγχρονισμού γνωρίζετε στα λειτουργικά συστήματα;