Sobes.tech

Golang

Kaip veikia garbage collector Go? Aprašykite fazes ir algoritmą.

Middle+
172

Modeliuoti paprastą banko sistemą: - `accounts` lentelė: - `id`, - `owner_id`, - `currency`, - `created_at`. - `transactions` lentelė: - `id`, - `account_id`, - `amount`, - `created_at`. **Reikalavimai:** 1. Parašykite SQL, kuris sukurs schemą su būtinomis apribojimais (NOT NULL, FK, CHECK `amount` ne nulis). 2. Parašykite užklausą: - gauti dabartinį sąskaitos balansą pagal `account_id` (suma `amount`). 3. Papildomas sudėtingumas: palaikyti debetą/kreditą (dvigubas įrašas). Valymas

Middle+
171

Bendra įspūdžio apie pokalbį, kandidato lygis, rekomendacijos

Middle+
160

Kokios yra goroutines pranašumai prieš OS gijas?

Middle+
145

Kaip galima optimizuoti paiešką duomenų bazėje? Kas yra indeksai ir koks jų sudėtingumas?

Middle+
143

Papasakokite apie Go (scheduler) planuotoją. Kaip jis veikia? Kas yra hand-off?

Middle+
136

Kokios sinchronizacijos primitivas yra Go? Kuo skiriasi Mutex ir RWMutex? Kada naudoti atomics?

Middle+
121

Kaip veikia žemėlapis Go? Papasakokite apie vidinę struktūrą, buckets, kolizijas.

Middle+
119

3. Sudėtingumas: palaikyti debetą/kreditą (dviguba įrašas). Valymas CREATE TABLE sąskaitos ( id BIGSERIAL PRIMARY KEY, owner_id BIGINT NOT NULL, currency VARCHAR(3) NOT NULL, created_at TIMESTAMP NOT NULL DEFAULT now() ); CREATE TABLE operacijos ( id BIGSERIAL PRIMARY KEY, account_id BIGINT NOT NULL REFERENCES sąskaitos(id), amount NUMERIC(18,2) NOT NULL CHECK (amount <> 0), created_at TIMESTAMP NOT NULL DEFAULT now() ); CREATE INDEX idx_operacijos_account_id ON operacijos(account_id); SELECT COALESCE(sum(amount), 0) AS balance FROM operacijos WHERE account_id = :account_id; ALTER TABLE operacijos ADD COLUMN type VARCHAR(6) NOT NULL CHECK (type IN ('debit', 'credit')); ALTER TABLE operacijos DROP CONSTRAINT operacijos_amount_check, ADD CONSTRAINT operacijos_amount_check CHECK (amount > 0); SELECT COALESCE( SUM(CASE WHEN type = 'credit' THEN amount WHEN type = 'debit' THEN - amount ) AS balance FROM operacijos WHERE account_id = :account_id;

Middle+
107

Modeliuokite paprastą banko sistemą: - `accounts` lentelė: - `id`, - `owner_id`, - `currency`, - `created_at`. - `transactions` lentelė: - `id`, - `account_id`, - `amount`, - `created_at`. **Reikalavimai:** 1. Parašykite SQL, kad sukurtumėte schemą su būtinomis apribojimais (NOT NULL, FK, CHECK `amount` ne nulis). 2. Parašykite užklausą: - gauti dabartinį sąskaitos balansą pagal `account_id` (suma `amount`). 3. Papildomas sudėtingumas: palaikyti debetą/kreditą (dviguba įrašas). Valymas.

Middle+
94