Ko'pchilik zerikdi Juda sodda masala (hamma tushunadigan )
A. Kvadrat yil
⏱️ Vaqt cheklovi: 1 soniya
💾 Xotira cheklovi: 256 MB
2025 sonini (20 + 25)² = 2025 ko‘rinishida yozish mumkinligini payqadingizmi?
Misol:
Kirish:
Chiqish:
Javoblaringizni izohlarda qoldiring.
Yechimlar juda ko'p variantda bo'lishi mumkin.
Sinovlarni bu yerda o'tkazishiz mumkin.
A. Kvadrat yil
⏱️ Vaqt cheklovi: 1 soniya
💾 Xotira cheklovi: 256 MB
2025 sonini (20 + 25)² = 2025 ko‘rinishida yozish mumkinligini payqadingizmi?
Sizga 4 xonali yil beriladi (masalan: 0001, 0185, 1375). Sizning vazifangiz bu yilni (a + b)² ko‘rinishida yozish mumkinligini aniqlash? Bu yerda a va b — butun, manfiy bo‘lmagan sonlar.
Agar bo‘lsa, a va b ni chiqaring. Aks holda, -1 deb chiqarish kerak.
🧩 Kirish:
Birinchi qatorda t — testlar soni (1 ≤ t ≤ 10⁴)
Keyingi t qatorda har biri 4 xonali son bo‘lgan yillar (s) beriladi.
🧾 Chiqish:
Har bir yil uchun:
Agar mavjud bo‘lsa: a b
Aks holda: -1
Misol:
Kirish:
5
0001
1001
1000
4900
2025
Chiqish:
0 1
-1
-1
34 36
20 25
Javoblaringizni izohlarda qoldiring.
Yechimlar juda ko'p variantda bo'lishi mumkin.
Sinovlarni bu yerda o'tkazishiz mumkin.
Codeforces
Problem - A - Codeforces
Codeforces. Programming competitions and contests, programming community
⚡2
Backendni AB testlashni kurib utamiz.
Bazida API dagi vaqtni RPS (request per secondni) aniqlashga to'gri keladi.
Foydalanuvchilar soni yoki surovlar ko'payib borganda bu juda muhim.
API ni benchmarkni (tezligini) testlash uchun bir nechta utils lar mavjud.
Ularni eng oddiysi bu Apache Benchmark
Siz serverni uzingiz xohlagan framework yoki tilda tuzishiz mumkin men shunchaki C++ da userverda kursataman.
Aslida Google Benchmark userver kabi frameworkda avtomatik ulangan .
Demak Server Template yuklab olamiz
keyin configs ga utib static_config.yaml ga biroz ishlov beramiz.
keyin esa CMakeList.txt dan serverga aloqasi bulmagan qismni olib tashlaymiz
Build qilamiz va ishga tushuramiz.
2 - LEVEL
ab yordamida testlaymiz
Bazida API dagi vaqtni RPS (request per secondni) aniqlashga to'gri keladi.
Foydalanuvchilar soni yoki surovlar ko'payib borganda bu juda muhim.
API ni benchmarkni (tezligini) testlash uchun bir nechta utils lar mavjud.
Ularni eng oddiysi bu Apache Benchmark
Siz serverni uzingiz xohlagan framework yoki tilda tuzishiz mumkin men shunchaki C++ da userverda kursataman.
Aslida Google Benchmark userver kabi frameworkda avtomatik ulangan .
Demak Server Template yuklab olamiz
keyin configs ga utib static_config.yaml ga biroz ishlov beramiz.
components_manager:
task_processors:
main-task-processor:
worker_threads: 4
fs-task-processor:
worker_threads: 2
default_task_processor: main-task-processor
components:
server:
listener:
port: 8080
task_processor: main-task-processor
logging:
fs-task-processor: fs-task-processor
loggers:
default:
file_path: '@stderr'
level: info
overflow_behavior: discard
dynamic-config:
defaults:
HTTP_CLIENT_CONNECTION_POOL_SIZE: 1000
testsuite-support: {}
http-client:
load-enabled: false
fs-task-processor: fs-task-processor
dns-client:
fs-task-processor: fs-task-processor
tests-control:
load-enabled: false
path: /tests/{action}
method: POST
task_processor: main-task-processor
handler-ping:
path: /ping
method: GET
task_processor: main-task-processor
throttling_enabled: false
url_trailing_slash: strict-match
handler-hello:
path: /hello
method: GET,POST
task_processor: main-task-processor
keyin esa CMakeList.txt dan serverga aloqasi bulmagan qismni olib tashlaymiz
cmake_minimum_required(VERSION 3.12)
project(service_template CXX)
# Adding userver dependency
find_package(userver COMPONENTS core postgresql QUIET)
if(NOT userver_FOUND)
set(USERVER_FEATURE_CRYPTOPP_BLAKE2 OFF CACHE BOOL "" FORCE)
set(USERVER_FEATURE_GRPC_CHANNELZ OFF CACHE BOOL "" FORCE)
set(USERVER_FEATURE_REDIS_HI_MALLOC ON CACHE BOOL "" FORCE)
if (EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/third_party/userver)
message(STATUS "Using userver framework from third_party/userver")
add_subdirectory(third_party/userver)
else()
message(FATAL_ERROR "Either install the userver or provide a path to it")
endif()
endif()
userver_setup_environment()
# Common sources
add_library(${PROJECT_NAME}_objs OBJECT
src/hello.hpp
src/hello.cpp
)
target_link_libraries(${PROJECT_NAME}_objs PUBLIC userver::core)
# The Service
add_executable(${PROJECT_NAME} src/main.cpp)
target_link_libraries(${PROJECT_NAME} PRIVATE ${PROJECT_NAME}_objs)
# Install
include(GNUInstallDirs)
if(DEFINED ENV{PREFIX})
message(STATUS "Set install prefix: $ENV{PREFIX}")
file(TO_CMAKE_PATH "$ENV{PREFIX}" PREFIX_PATH)
set(CMAKE_INSTALL_PREFIX "${PREFIX_PATH}")
endif()
file(GLOB CONFIGS_FILES ${CMAKE_CURRENT_SOURCE_DIR}/configs/*.yaml ${CMAKE_CURRENT_SOURCE_DIR}/configs/*.json)
install(TARGETS ${PROJECT_NAME} DESTINATION ${CMAKE_INSTALL_BINDIR} COMPONENT ${PROJECT_NAME})
install(FILES ${CONFIGS_FILES} DESTINATION ${CMAKE_INSTALL_SYSCONFDIR}/${PROJECT_NAME} COMPONENT ${PROJECT_NAME})
add_custom_command(TARGET ${PROJECT_NAME} POST_BUILD
COMMAND ${CMAKE_COMMAND} -E copy
${CMAKE_CURRENT_SOURCE_DIR}/configs/static_config.yaml
$<TARGET_FILE_DIR:${PROJECT_NAME}>/config_dev.yaml
COMMENT "Copying static_config.yaml to binary dir as config_dev.yaml"
)
Build qilamiz va ishga tushuramiz.
mkdir build && cd build
cmake ..
make
./main --config ../static_config.yaml
2 - LEVEL
ab yordamida testlaymiz
ab -n 10000 -c 200 http://127.0.0.1:8080/hello
🔥5❤1
bunda
-n 10000 - umumiy 10 000 surov yuborilishini bildiradi.
-c 200 - 200 ta paralel surov yuboriladi.
Natijasi qo'yidagi rasmga uxshaydigan bo'lishi kerak 🔽🔽🔽👇👇👇👇👇👇👇
-n 10000 - umumiy 10 000 surov yuborilishini bildiradi.
-c 200 - 200 ta paralel surov yuboriladi.
Natijasi qo'yidagi rasmga uxshaydigan bo'lishi kerak 🔽🔽🔽👇👇👇👇👇👇👇
⚡4
This media is not supported in your browser
VIEW IN TELEGRAM
This is how we conduct high-load testing.
⚡5❤1🍓1
Agar kimgadir qiziq bulsa.
Yaxshi kompaniya yaxshi tulaydi.
Faqat russian, english yaxshi bulishi kerak.
Мы в активном поиске С++ Software Engineer, скажите, пожалуйста, рассматриваете ли для себя новые предложения?
Больше о нас: https://www.usadynamics.com/
Ссылка на вакансию: https://hh.ru/vacancy/120846562?hhtmFrom=employer_vacancies
Polina Kiman
Yaxshi kompaniya yaxshi tulaydi.
Faqat russian, english yaxshi bulishi kerak.
Мы в активном поиске С++ Software Engineer, скажите, пожалуйста, рассматриваете ли для себя новые предложения?
Больше о нас: https://www.usadynamics.com/
Ссылка на вакансию: https://hh.ru/vacancy/120846562?hhtmFrom=employer_vacancies
Polina Kiman
Dynamics Scientific - Rotating and Static Equipment Monitoring
COMPACS - Real-Time Industrial Machinery Monitoring System
The real-time machinery and industrial equipment monitoring system delivers precise prescriptions on how to avoid equipment failures.
⚡3
Tassavur qiling sizni ma'lumotlar bazangiz PostgreSQL da
va siz bazaga qandaydir so'rov yubormoqdasz.
Oldizda bir xil muammoni yechadigan ikki xil turdagi so'rov bor.
Ayni paytda bazada ma'lumot juda kam va ikki xil so'rov ham bir xil vaqtda ishlamoqda.
Xo'sh siz qaysi so'rov yaxshiroq optimalroq ekanligini bilish uchun nimadan
yoki qanday usuldan foydalansz?
izohlarda fikrilarni kutaman!
va siz bazaga qandaydir so'rov yubormoqdasz.
Oldizda bir xil muammoni yechadigan ikki xil turdagi so'rov bor.
Ayni paytda bazada ma'lumot juda kam va ikki xil so'rov ham bir xil vaqtda ishlamoqda.
Xo'sh siz qaysi so'rov yaxshiroq optimalroq ekanligini bilish uchun nimadan
yoki qanday usuldan foydalansz?
izohlarda fikrilarni kutaman!
🆒4
🔻 Graceful shutdown haqida bilasizmi?
Highload tizimlarda bu juda muhim masala.
Tasavvur qiling: 1 soniyada serveringizga 1000+ so‘rov kelib tushmoqda.
Siz esa tizimga yangilanish joriy qilmoqchisiz — lekin bu kamida 1-2 sekund vaqt oladi.
❓ Xo‘sh, shu oraliqda kelgan so‘rovlar nima bo‘ladi?
Ular bekor bo‘ladimi? Javob qaytmaydimi? Foydalanuvchi kutaveradimi?
Aynan shunday holatlarda serverni va aktiv so‘rovlarni muloim tarzda boshqarish zarur bo‘ladi — bu jarayon Graceful Shutdown deb ataladi.
💡 U orqali:
yangi so‘rovlar bloklanadi
mavjudlar to‘liq yakunlanadi
fondagi tasklar (kesh, DB, push) toza yopiladi
va faqat shundan keyin server to‘xtatiladi
🛠 Siz foydalanayotgan framework yoki tilda bu qanday yechiladi?
Men masalan, C++ va Drogon asosida bu mexanizmni deyarli 60 % qulda yozib chiqishimga to'gri keladi.
📬 O‘z tajribangizni yoki savollaringizni izohlarda qoldiring — birga tahlil qilamiz.
Highload tizimlarda bu juda muhim masala.
Tasavvur qiling: 1 soniyada serveringizga 1000+ so‘rov kelib tushmoqda.
Siz esa tizimga yangilanish joriy qilmoqchisiz — lekin bu kamida 1-2 sekund vaqt oladi.
❓ Xo‘sh, shu oraliqda kelgan so‘rovlar nima bo‘ladi?
Ular bekor bo‘ladimi? Javob qaytmaydimi? Foydalanuvchi kutaveradimi?
Aynan shunday holatlarda serverni va aktiv so‘rovlarni muloim tarzda boshqarish zarur bo‘ladi — bu jarayon Graceful Shutdown deb ataladi.
💡 U orqali:
yangi so‘rovlar bloklanadi
mavjudlar to‘liq yakunlanadi
fondagi tasklar (kesh, DB, push) toza yopiladi
va faqat shundan keyin server to‘xtatiladi
🛠 Siz foydalanayotgan framework yoki tilda bu qanday yechiladi?
Men masalan, C++ va Drogon asosida bu mexanizmni deyarli 60 % qulda yozib chiqishimga to'gri keladi.
📬 O‘z tajribangizni yoki savollaringizni izohlarda qoldiring — birga tahlil qilamiz.
🔥7❤🔥2
Forwarded from Pavel Durov (Paul Du Rove)
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥15🆒1
🧠 Mahorat vs. 💸 Marketing
Bu juda ajoib taqqoslov va uning tagida ko'pgina narsa yotadi.
🔹 Telegram marketing uchun deyarli hech narsa sarflamaydi. Uning asoschisi Pavel Durov reklama o‘rniga mahsulot sifatiga, xavfsizlikka va foydalanuvchi erkinligiga e’tibor beradi.
🔹 Facebook esa yiliga milliardlab dollarlarni marketingga sarflaydi. Har bir skroll, har bir "like" ortida turgan reklama strategiyalari mavjud.
🙌 Lekin bugun dunyodagi eng faol foydalanuvchilarga ega mahsulotlardan biri – bu Telegram.
Demak mahsulotni davomiyligi va brendning mashhurligi uchun har doim ham katta mablagli marketing kerak emas ekan
degan xulosaga kelish mumkinmi?
🔁 Siz nima deb o‘ylaysiz?
Qaysi biri muhimroq: Mahoratmi yoki Marketing?
Bu juda ajoib taqqoslov va uning tagida ko'pgina narsa yotadi.
🔹 Telegram marketing uchun deyarli hech narsa sarflamaydi. Uning asoschisi Pavel Durov reklama o‘rniga mahsulot sifatiga, xavfsizlikka va foydalanuvchi erkinligiga e’tibor beradi.
🔹 Facebook esa yiliga milliardlab dollarlarni marketingga sarflaydi. Har bir skroll, har bir "like" ortida turgan reklama strategiyalari mavjud.
🙌 Lekin bugun dunyodagi eng faol foydalanuvchilarga ega mahsulotlardan biri – bu Telegram.
Demak mahsulotni davomiyligi va brendning mashhurligi uchun har doim ham katta mablagli marketing kerak emas ekan
degan xulosaga kelish mumkinmi?
🔁 Siz nima deb o‘ylaysiz?
Qaysi biri muhimroq: Mahoratmi yoki Marketing?
👍5⚡2❤1