[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"me":3,"catalog:tr:devops-cloud\u002Fnetworking-dns-loadbalancing":4,"config":257},null,{"field_key":5,"field_name":6,"seniority":7,"topic_key":8,"topic_name":9,"spec_key":7,"spec_name":7,"locale":10,"cell_total":11,"field_total":12,"seniorities":13,"topics":17,"specs":151,"samples":171},"devops-cloud","DevOps \u002F Cloud","","networking-dns-loadbalancing","Networking Dns Loadbalancing","tr",75,3375,[14,15,16],"junior","mid","senior",[18,21,24,27,30,33,36,39,42,45,48,51,54,57,60,63,66,69,72,75,78,81,84,87,90,93,96,99,102,105,108,111,114,117,120,123,124,127,130,133,136,139,142,145,148],{"key":19,"name":20,"count":11},"aws-compute-ec2-lambda","Aws Compute Ec2 Lambda",{"key":22,"name":23,"count":11},"aws-databases-rds-dynamodb","Aws Databases Rds Dynamodb",{"key":25,"name":26,"count":11},"aws-iam-security","Aws Iam Security",{"key":28,"name":29,"count":11},"aws-messaging-eventing","Aws Messaging Eventing",{"key":31,"name":32,"count":11},"aws-networking-vpc","Aws Networking Vpc",{"key":34,"name":35,"count":11},"aws-storage-s3-ebs","Aws Storage S3 Ebs",{"key":37,"name":38,"count":11},"azure-compute-vm-appservice","Azure Compute Vm Appservice",{"key":40,"name":41,"count":11},"azure-databases-sql-cosmosdb","Azure Databases Sql Cosmosdb",{"key":43,"name":44,"count":11},"azure-iam-security","Azure Iam Security",{"key":46,"name":47,"count":11},"azure-messaging-eventing","Azure Messaging Eventing",{"key":49,"name":50,"count":11},"azure-networking-vnet","Azure Networking Vnet",{"key":52,"name":53,"count":11},"azure-storage-blob-managed-disk","Azure Storage Blob Managed Disk",{"key":55,"name":56,"count":11},"ci-cd-pipelines","Ci Cd Pipelines",{"key":58,"name":59,"count":11},"cloud-architecture-scaling","Cloud Architecture Scaling",{"key":61,"name":62,"count":11},"containers-orchestration","Containers Orchestration",{"key":64,"name":65,"count":11},"deployment-release-strategies","Deployment Release Strategies",{"key":67,"name":68,"count":11},"gcp-compute-gce-cloudrun","Gcp Compute Gce Cloudrun",{"key":70,"name":71,"count":11},"gcp-databases-cloudsql-spanner-firestore","Gcp Databases Cloudsql Spanner Firestore",{"key":73,"name":74,"count":11},"gcp-iam-security","Gcp Iam Security",{"key":76,"name":77,"count":11},"gcp-messaging-eventing","Gcp Messaging Eventing",{"key":79,"name":80,"count":11},"gcp-networking-vpc","Gcp Networking Vpc",{"key":82,"name":83,"count":11},"gcp-storage-gcs-persistent-disk","Gcp Storage Gcs Persistent Disk",{"key":85,"name":86,"count":11},"infrastructure-as-code","Infrastructure As Code",{"key":88,"name":89,"count":11},"k8s-config-secrets","K8s Config Secrets",{"key":91,"name":92,"count":11},"k8s-observability-troubleshooting","K8s Observability Troubleshooting",{"key":94,"name":95,"count":11},"k8s-scheduling-resources","K8s Scheduling Resources",{"key":97,"name":98,"count":11},"k8s-services-networking","K8s Services Networking",{"key":100,"name":101,"count":11},"k8s-storage","K8s Storage",{"key":103,"name":104,"count":11},"k8s-workloads","K8s Workloads",{"key":106,"name":107,"count":11},"linux-filesystem-permissions-links","Linux Filesystem Permissions Links",{"key":109,"name":110,"count":11},"linux-networking-tools-troubleshooting","Linux Networking Tools Troubleshooting",{"key":112,"name":113,"count":11},"linux-performance-monitoring-resource-limits","Linux Performance Monitoring Resource Limits",{"key":115,"name":116,"count":11},"linux-process-management-signals","Linux Process Management Signals",{"key":118,"name":119,"count":11},"linux-shell-scripting-ops-automation","Linux Shell Scripting Ops Automation",{"key":121,"name":122,"count":11},"linux-systemd-service-management","Linux Systemd Service Management",{"key":8,"name":9,"count":11},{"key":125,"name":126,"count":11},"observability-monitoring","Observability Monitoring",{"key":128,"name":129,"count":11},"reliability-incident-sre","Reliability Incident Sre",{"key":131,"name":132,"count":11},"security-iam-secrets","Security Iam Secrets",{"key":134,"name":135,"count":11},"terraform-hcl-language-expressions","Terraform Hcl Language Expressions",{"key":137,"name":138,"count":11},"terraform-modules-workspaces","Terraform Modules Workspaces",{"key":140,"name":141,"count":11},"terraform-plan-apply-drift-import","Terraform Plan Apply Drift Import",{"key":143,"name":144,"count":11},"terraform-providers-lifecycle-provisioners","Terraform Providers Lifecycle Provisioners",{"key":146,"name":147,"count":11},"terraform-state-backend-locking","Terraform State Backend Locking",{"key":149,"name":150,"count":11},"terraform-testing-policy-cicd","Terraform Testing Policy Cicd",[152,156,159,162,165,168],{"key":153,"name":154,"count":155},"aws","AWS",450,{"key":157,"name":158,"count":155},"azure","Azure",{"key":160,"name":161,"count":155},"gcp","GCP",{"key":163,"name":164,"count":155},"kubernetes","Kubernetes",{"key":166,"name":167,"count":155},"linux","Linux",{"key":169,"name":170,"count":155},"terraform","Terraform",[172,190,203,217,230,244],{"id":173,"topic":9,"difficulty":174,"body":175,"options":176,"correct_key":181,"explanation":189},"019f56bb-b94f-79d8-8ba9-4bc784724d3b",1,"Bir DNS A kaydının temel amacı nedir?",[177,180,183,186],{"key":178,"text":179},"a","Bir hostname'i başka bir hostname'e yönlendiren bir alias saklar.",{"key":181,"text":182},"b","Bir hostname'i, client'ların sunucuya ulaşabilmesi için bir IPv4 adresine eşler.",{"key":184,"text":185},"c","Bir domain'den sorumlu mail sunucularını tanımlar.",{"key":187,"text":188},"d","Bir resolver'ın bir DNS yanıtını cache'te tutabileceği maksimum süreyi belirler.","A record, bir hostname'i doğrudan bir IPv4 adresine eşler. Bir hostname'i başka bir hostname'e yönlendirmek CNAME kaydının işidir; mail sunucusu ataması MX record'a aittir; cache süresi ise record tipinin kendisi değil TTL tarafından belirlenir.",{"id":191,"topic":9,"difficulty":174,"body":192,"options":193,"correct_key":187,"explanation":202},"019f56bb-b950-7083-b898-ab2d25f668d3","Aşağıdaki zone kayıtları verildiğinde:\n```\nblog.example.com.    300  IN  CNAME  example.com.\nexample.com.          300  IN  A      203.0.113.10\n```\nBir client `blog.example.com` için sorgu yapıyor. Sonunda hangi IP adresini alacak?",[194,196,198,200],{"key":178,"text":195},"Hiçbir IP almaz — resolver'lar bir CNAME'i otomatik olarak başka bir kayda takip edemez.",{"key":181,"text":197},"Resolver hata döner, çünkü bir isim hem CNAME hem de A record zincirine sahip olamaz.",{"key":184,"text":199},"Bu tamamen example.com için tanımlı mail sunucusuna bağlıdır.",{"key":187,"text":201},"203.0.113.10 — CNAME'i takip ederek ulaşılan example.com'un A record IP'si.","CNAME bir alias'tır: resolver onu hedef isme takip eder ve çözümlemeye oradan devam ederek sonunda A record'un IP'sini döner. Resolver'lar normal çözümlemenin bir parçası olarak CNAME zincirlerini otomatik takip eder; bunun mail sunucularıyla ilgisi yoktur.",{"id":204,"topic":9,"difficulty":205,"body":206,"options":207,"correct_key":178,"explanation":216},"019f56bb-b950-75e8-90ca-84998e11192c",2,"Domain'inizin A record'unu yeni bir sunucunun IP adresine işaret edecek şekilde güncellediniz, ama sonrasında yaklaşık bir saat boyunca bazı ziyaretçiler hâlâ eski sunucuya düşüyor. En olası sebep nedir?",[208,210,212,214],{"key":178,"text":209},"DNS resolver'ları önceki kaydı cache'lemişti ve TTL süresi dolana kadar tekrar sorgu yapmayacaklar.",{"key":181,"text":211},"Yeni sunucu yanlış yapılandırılmış ve gelen tüm trafiği reddediyor.",{"key":184,"text":213},"Domain registrar henüz record değişikliğini onaylamadı.",{"key":187,"text":215},"Client ile sunucu arasındaki bir load balancer hâlâ bazı istekleri eski bir backend sunucuya yönlendiriyor.","Bu kademeli ve zaman-sınırlı belirti, DNS caching'in klasik imzasıdır: farklı resolver'lar eski yanıtı farklı zamanlarda cache'lemiştir, dolayısıyla TTL'e göre farklı zamanlarda expire olup tekrar sorgu yaparlar. Registrar onayı ya da sunucu yanlış yapılandırması genelde farklı, zamana bağlı olmayan bir belirti üretir.",{"id":218,"topic":9,"difficulty":174,"body":219,"options":220,"correct_key":184,"explanation":229},"019f56bb-b950-7e5a-8094-ff601da6f437","Aşağıdaki zone kaydında:\n```\nwww.example.com.   60   IN   A   203.0.113.5\n```\n`60` değeri neyi temsil eder?",[221,223,225,227],{"key":178,"text":222},"Bir resolver'ın sorguyu başarısız saymadan önce yapacağı retry sayısını.",{"key":181,"text":224},"Aynı hostname için birden fazla A record varsa sıralamada kullanılan öncelik değerini.",{"key":184,"text":226},"Bir resolver'ın bu kaydı cache'te tutabileceği maksimum saniye sayısı (TTL).",{"key":187,"text":228},"Sunucunun bu kayıt için dinlediği port numarasını.","Bir zone dosyasında, kayıt isminin yanındaki sayısal değer saniye cinsinden TTL'dir — resolver'ların yanıtı cache'te tutabileceği maksimum süre. DNS A record'ları öncelik taşımaz (bu bir MX kavramıdır) ya da port numarası taşımaz (bu bir SRV kavramıdır).",{"id":231,"topic":9,"difficulty":232,"body":233,"options":234,"correct_key":181,"explanation":243},"019f56bb-b951-74a8-980b-daa499f66bd9",3,"Ekibiniz planlanan bir migration öncesinde bir record'un TTL'ini 3600'den 60 saniyeye düşürüyor, 10 dakika bekliyor, sonra record'u yeni sunucuya çeviriyor. Migration sırasında, kullanıcıların küçük bir kısmı sonrasında bir saate kadar hâlâ eski sunucuya düşüyor. Bunu en iyi açıklayan nedir?",[235,237,239,241],{"key":178,"text":236},"Zone dosyası doğru kaydedilmedi, dolayısıyla değişiklik hiç propagate olmadı.",{"key":181,"text":238},"Bazı resolver'lar yanıtı eski TTL altında zaten cache'lemişti ve bu cache erken expire olmaz.",{"key":184,"text":240},"TTL sadece CNAME record'lara uygulanır, A record'lara değil; bu yüzden düşürmenin burada etkisi olmadı.",{"key":187,"text":242},"DNS propagation, herhangi bir TTL ayarından bağımsız olarak her zaman tam 24-48 saat sürer.","TTL'i düşürmek yalnızca değişiklikten sonra yapılan yeni lookup'ları etkiler — bir resolver'ın eski, daha büyük TTL altında zaten cache'lediği yanıtların cache penceresini geriye dönük olarak küçültemez. Bu yüzden 10 dakika beklemek, her resolver'ın yeni kısa TTL'i almış olması için yeterli olmadı. TTL her record tipine uygulanır ve evrensel sabit bir propagation süresi yoktur.",{"id":245,"topic":9,"difficulty":174,"body":246,"options":247,"correct_key":178,"explanation":256},"019f56bb-b951-7ba3-b24e-b0a95495ce8e","Bir load balancer'ın temel amacı nedir?",[248,250,252,254],{"key":178,"text":249},"Gelen trafiği birden fazla backend sunucusuna dağıtmak.",{"key":181,"text":251},"Client ile backend sunucular arasında değişen tüm trafiği şifrelemek.",{"key":184,"text":253},"Statik içeriği son kullanıcılara coğrafi olarak daha yakın sunuculara cache'lemek.",{"key":187,"text":255},"Client'lar için okunabilir domain isimlerini IP adreslerine çevirmek.","Bir load balancer'ın temel işi, kapasite ve dayanıklılık için trafiği backend'lere dağıtmaktır. Trafiği şifrelemek (TLS termination) opsiyonel bir LB özelliği olabilir, içeriği kullanıcılara yakın cache'lemek CDN'in işidir, isimleri IP'ye çevirmek ise DNS'in işidir.",{"fields":258,"seniorities":429,"interview_shapes":430,"locales":435,"oauth":437,"question_count":440,"coach_enabled":441,"jd_match_enabled":441},[259,284,304,320,330,343,362,381,403,410,416,423],{"key":260,"name_tr":261,"name_en":261,"sort":174,"specializations":262},"backend","Backend",[263,266,269,272,275,278,281],{"key":264,"name":265,"field":260},"general","Genel",{"key":267,"name":268,"field":260},"go","Go",{"key":270,"name":271,"field":260},"python","Python",{"key":273,"name":274,"field":260},"java","Java",{"key":276,"name":277,"field":260},"csharp","C#\u002F.NET",{"key":279,"name":280,"field":260},"nodejs","Node.js",{"key":282,"name":283,"field":260},"php","PHP",{"key":285,"name_tr":286,"name_en":286,"sort":205,"specializations":287},"frontend","Frontend",[288,289,292,295,298,301],{"key":264,"name":265,"field":285},{"key":290,"name":291,"field":285},"javascript","JavaScript",{"key":293,"name":294,"field":285},"typescript","TypeScript",{"key":296,"name":297,"field":285},"react","React",{"key":299,"name":300,"field":285},"vue","Vue",{"key":302,"name":303,"field":285},"angular","Angular",{"key":305,"name_tr":306,"name_en":306,"sort":232,"specializations":307},"fullstack","Fullstack",[308,309,310,311,312,313,314,315,316,317,318,319],{"key":264,"name":265,"field":305},{"key":267,"name":268,"field":260},{"key":270,"name":271,"field":260},{"key":273,"name":274,"field":260},{"key":276,"name":277,"field":260},{"key":279,"name":280,"field":260},{"key":282,"name":283,"field":260},{"key":290,"name":291,"field":285},{"key":293,"name":294,"field":285},{"key":296,"name":297,"field":285},{"key":299,"name":300,"field":285},{"key":302,"name":303,"field":285},{"key":5,"name_tr":6,"name_en":6,"sort":321,"specializations":322},4,[323,324,325,326,327,328,329],{"key":264,"name":265,"field":5},{"key":153,"name":154,"field":5},{"key":160,"name":161,"field":5},{"key":157,"name":158,"field":5},{"key":163,"name":164,"field":5},{"key":169,"name":170,"field":5},{"key":166,"name":167,"field":5},{"key":331,"name_tr":332,"name_en":332,"sort":333,"specializations":334},"ai-engineer","AI Engineer",5,[335,336,337,340],{"key":264,"name":265,"field":331},{"key":270,"name":271,"field":331},{"key":338,"name":339,"field":331},"llm-rag","LLM\u002FRAG",{"key":341,"name":342,"field":331},"mlops","MLOps",{"key":344,"name_tr":345,"name_en":346,"sort":347,"specializations":348},"database","Veritabanı","Database",6,[349,350,353,356,359],{"key":264,"name":265,"field":344},{"key":351,"name":352,"field":344},"postgresql","PostgreSQL",{"key":354,"name":355,"field":344},"mysql","MySQL",{"key":357,"name":358,"field":344},"mongodb","MongoDB",{"key":360,"name":361,"field":344},"redis","Redis",{"key":363,"name_tr":364,"name_en":365,"sort":366,"specializations":367},"mobile","Mobil","Mobile",7,[368,369,372,375,378],{"key":264,"name":265,"field":363},{"key":370,"name":371,"field":363},"ios-swift","iOS (Swift)",{"key":373,"name":374,"field":363},"android-kotlin","Android (Kotlin)",{"key":376,"name":377,"field":363},"flutter","Flutter",{"key":379,"name":380,"field":363},"react-native","React Native",{"key":382,"name_tr":383,"name_en":384,"sort":385,"specializations":386},"security","Güvenlik","Security",8,[387,388,391,394,397,400],{"key":264,"name":265,"field":382},{"key":389,"name":390,"field":382},"appsec","AppSec",{"key":392,"name":393,"field":382},"offensive-pentest","Offensive \u002F Pentest",{"key":395,"name":396,"field":382},"cloud-security","Cloud Security",{"key":398,"name":399,"field":382},"devsecops","DevSecOps",{"key":401,"name":402,"field":382},"blue-team-incident","Blue Team \u002F Incident",{"key":404,"name_tr":405,"name_en":406,"sort":407,"specializations":408},"qa-test-automation","QA \u002F Test Otomasyonu","QA \u002F Test Automation",9,[409],{"key":264,"name":265,"field":404},{"key":411,"name_tr":412,"name_en":412,"sort":413,"specializations":414},"data-engineer","Data Engineer",10,[415],{"key":264,"name":265,"field":411},{"key":417,"name_tr":418,"name_en":419,"sort":420,"specializations":421},"game-dev","Oyun Geliştirme","Game Development",11,[422],{"key":264,"name":265,"field":417},{"key":424,"name_tr":425,"name_en":425,"sort":426,"specializations":427},"ml-engineer","ML Engineer",12,[428],{"key":264,"name":265,"field":424},[14,15,16],{"junior":431,"mid":433,"senior":434},{"questions":432,"median_sec":3},20,{"questions":432,"median_sec":3},{"questions":432,"median_sec":3},[10,436],"en",[438,439],"google","github",21750,true]