İzdüşümü Yazılım

İzdüşümü Yazılım Yazılım ve Program konularında araştırma, bilgilendirme sayfasıdır.

Sosyal Devlet Nedir?Sosyal devlet, vatandaşlarının refahını ve sosyal adaletini sağlamak amacıyla ekonomik ve toplumsal ...
29/10/2024

Sosyal Devlet Nedir?

Sosyal devlet, vatandaşlarının refahını ve sosyal adaletini sağlamak amacıyla ekonomik ve toplumsal müdahalelerde bulunan bir devlet modelidir. Bu modelde devlet, piyasa ekonomisinin, doğal afetlerin, savaşların veya diğer öngörülemeyen gelişmelerin toplumda yarattığı aksaklıkları gidermeye çalışır. İkinci olarak da zenginle fakir arasındaki mesafeyi gidermeye çalışır.

Nedir sosyal devletin özellikleri diye sorarsak?

Başta vatandaşına fırsat eşitliği sağlar. Diğer bir özelliği ise, vatandaşının insanca yaşaması için çalışır. Bunun için ekonomik ve sosyal hakları gözeterek düzenlemeler yapar. Üçüncü olarak da, demokratik değerlere ve vatandaşların hak ve özgürlüklerine önem verir.
Hacı Aslan

13/10/2024
22/03/2024

SMTP Nedir? Ne İşe Yarar?

Günümüzde çoğunlukla web siteleri tarafından kullanılan webmailler için geliştirilmiş bir sistem olan SMTP protokolü, sunucular arasındaki iletinin doğru, hızlı ve güvenilir bir şekilde yayılmasını sağlar. SMTP protokolü, sunucuya gönderilen mesajları kaydedip daha sonra izleme imkanı sunmaktadır. SMTP protokolü ile e-postalarınıza gelen mesajları bilgisayar, laptop, telefon ve tabletlerden okuyabilme imkanına erişebilirsiniz.

Teknolojinin günümüzde gelişmesiyle birlikte internet ve haberleşme teknolojisinde değişiklikler meydana gelmesi kaçınılmaz olmuştur. İnternet kullanımının gelişmesi ve yaygınlaşması ile birlikte kişiler ve kurumlar arasındaki iletişimin sağlanmasında temel rol oynayan e-posta, dünya üzerinde binlerce kişi tarafından tercih edilmiştir. İnternet kullanıcılarının yaşamını çok daha kolay hale getiren e-posta basit ve kullanışlı bir haber yöntemidir. Simple Mail Transfer Protocol olarak da bilinen SMTP Türkçeye “basit posta aktarımı” olarak çevrilmiştir.

E-posta almak ve göndermek için kullanılan SMTP, TCP/IP olarak da adlandırılır. Alıcı, iletilen mesajları sunucuya sıralar ve sunucuların gelen mesajları kaydetmesine imkan tanır. SMTP, POP3 (Posta Ofisi Protokolü) ve IMAP (İnternet Mesaj Erişim Protokolü) ile birlikte kullanılır. E-posta göndermek için genellikle SMTP, posta almak içinde POP3 ya da IMAP tercih edilir. Ayrıca sadece e-posta için değil internet için gerekli olan sunucu ya da veri aktarımı için de kullanılır. SMTP ayarları oluşturmak istediğiniz e-postaları posta sunucusuna yüklemek için gerekmektedir. SMTP ayarı yapmak için admin panelinde sol tarafta yer alan başlangıç menüsünden eklentiler seçeneğini tıklayınız. Açılan menüden yeni ekle butonunu seçiniz. Açılan sayfada sağ üst tarafta olan “Wp Mail SMTP “ibaresini ekleyip aratınız. Çıkan sonuçlardan “Wp Mail SMTP by Wpforms “seçeneğini şimdi kur butonuna basarak kurabilirsiniz.

14/01/2024

Port Yönlendirme Nedir, Neden Gerek Duyulur, Nasıl Yapılır?

Özellikle oyun dünyasında port yönlendirme (port forwarding) terimlerini sıkça duyuyoruz. Örneğin Xbox'unuz bir oyunun sunucularına bağlanmıyorsa veya evinizdeki web sunucusuna dışarıdan ulaşamıyorsanız, port yönlendirmeyi yapılandırmanız gerekiyor. Bu yazımızda portun ne demek olduğunu ve neden yönlendirilmesi gerektiğini açıklayacak, yönlendirmeyi tipik bir router'da nasıl yapacağınızı anlatacağız.

Port Nedir?
IP adreslerinin ne olduğunu duymuşsunuzdur. Telefondan PC'ye ağınızdaki her cihaza router'ınız tarafından bir IP adresi atanır. IP adreslerinin iki türü vardır: herkese açık (public) ve özel (private) IP adresleri. Yerel ağınızda cihazlarınıza atanan IP'ler, özel IP'lerdir. Herkese açık IP'nizi ise örneğin bu sayfadan veya Google'a sorarak görebilirsiniz.

Özel IP adresleri, sadece yerel ağlarda kullanılır. Bu adresler, dışarıda bir işe yaramazlar. İnternet dünyasına tek bir IP ile açıldığınızdan, veri aktarımı sırasında verinin hangi özel IP'ye ulaştırılacağının bilinmesi gerekir. Burada portlar devreye girer.

Her port, farklı bir uygulama için kullanılır ve toplamda 65536 port kullanılabilir. İlk 1024 porttaki sayılar standart hale gelmiştir. Örneğin güvensiz web bağlantıları 80 portu, güvenli HTTP bağlantıları ise 443 portu üzerinden gerçekleşir. 1024'ten sonraki neredeyse her port, oyunlar, dosya paylaşım uygulamaları, güvenlik kameraları vs. tarafından kullanılabilir.

Portlar hem giden, hem gelen bağlantılarda kullanılsa da port yönlendirme denildiğinde, genellikle cihazınızın dışarıdan gelen bağlantıları beklemesi ve kabul etmesi kastedilir. Giden bağlantılar için (örneğin bir web sitesini açmak), router arayüzünden port yönlendirmenize gerek yoktur. Bu portlar, bağlantı sırasında otomatik olarak açılır. Bu noktada TCP'nin iki yönde trafiğe ihtiyacı olduğunu söyleyelim; yani gelen ve giden bağlantı ile ilk bağlantının yönünden bahsediyoruz (yani giden ve gelen bağlantı iki yönlüdür).

UPnP Yardıma Yetişiyor

Router'lar, güvenlik amacıyla birçok portu varsayılan olarak engellerler. İnternet üzerinden evinizdeki bir cihaza bağlanılabilmesi için, cihazınız router'a gelen mesajları kendisine yönlendirmesi gerektiğini söylemeli, bu sırada port numarasını belirtmelidir.

UPnP bu işi otomatik hale getirerek uygulamaların router üzerinde port açmasına izin veriyor. Bu bazı kullanıcılara göre güvenlik zaafiyeti oluşturuyor, çünkü PC'nize giren herhangi bir zararlı, bu şekilde port açabilir ve hacker'lara uzaktan yönetim olanağı sunabilir.

UPnP'yi tehlikeli olduğunu düşündüğünüzden dolayı kapattıysanız, port yönlendirme kurallarını her uygulama için kendiniz ayarlamalısınız. UPnP'yi kapatmadıysanız bile, bu işlev her zaman düzgün çalışmayabilir. Bu yüzden port yönlendirmelerini kendiniz yapmanız gerekebilir.

Port Yönlendirme Nasıl Yapılır?
Öncelikle router yönetim sayfasına ulaşmanız gerekiyor. Bunun için genellikle web tarayıcınıza 192.168.0.1 veya 192.168.1.1 gibi bir adres yazmanız gerekir.

Bunun yanında yönlendireceğiniz port veya portları bilmeniz, portun yönlendirileceği PC'nin veya cihazın yerel IP adresini de bilmeniz gerekiyor. Bazı uygulamalar, TCP ve UDP paketleri arasında seçim yapmanızı da isteyebilir. Bunu bilmiyorsanız, kisini birden yönlendirebilirsiniz.

Bu bilgileri edindikten sonra router yapılandırma sayfasını açın ve "Port yönlendirme" veya "Port forwarding" sayfasını bulun. Örneğin bizim Zyxel router'ımızda bu sayfa, Network Setting > NAT altında bulunuyordu.

Oluşturduğunuz yönledirme kuralına muhtemelen bir isim vermeniz gerekecek. Herhangi bir isim verdikten sonra yönlendireceğiniz port aralığını belirtin. Eğer tek bir portu yönlendirecekseniz, başlangıç ve bitiş portu olarak aynı portu yazmanız gerekebilir. TCP ve UDP protokollerinden hangisini yönlendireceğinizden emin değilseniz, ikisini de seçin.

Bazı router'larda hedef portu da değiştirmenize izin veriliyor (bu portu farklı ayarlamanız durumda router'ınızın açtığı port ile bu bağlantıyı yönlendirdiği yerel port farklı olacak demektir). Oyunlar gibi hizmetlerde bu alana aynı portu yazmaya dikkat edin.

Her Zaman Port Yönlendirme Seçeneğiniz Olmayabilir
Şunu önemle belirtmek gerekiyor ki bazı servis sağlayıcılar, size paylaşımlı bir IP numarası atıyorlar ve bundan dolayı dışarıdan gelen bağlantılar için portlarınızı dünyaya kapatıyorlar. Bu hizmet sağlayıcılar, yönlendirme yeteneğini yalnızca statik IP satın almanız halinde sunabiliyorlar. Bu durumda herkese açık IP adresiniz sadece size ait olmadığından, router üzerinde port yönlendirmeniz işe yaramayabilir. Modemin yönetim arayüzünde gördüğünüz herkese açık IP ile internet üzerinde kontrol ettiğiniz IP'nin farklı olması, bu durumun bir işareti olabilir.

Port yönlendirmenin işe yaramayacağı bir başka durum, ağınızda çift NAT bulunması; yani internete çıkılmadan önce kontrolünüz dışında bir konumda, bir başka yönlendirme daha yapılması. Bu durumda portlar internete kapalı olacağından, yönlendirme kuralları oluşturmanız işe yaramayacaktır.

Sunucu (Server) Nedir?Sunucu (server) terimi, internet kullanımının yaygınlaşması ve sanallaştırma (virtualization) hizm...
14/01/2024

Sunucu (Server) Nedir?

Sunucu (server) terimi, internet kullanımının yaygınlaşması ve sanallaştırma (virtualization) hizmetlerinin de artmasıyla sıklıkla karşımıza çıkmaktadır. İnternet erişimimizi mümkün kılan, birçok konuda araştırma yapabilmemizi sağlayan, e-ticaret faaliyetlerimizi dahi yönlendiren sunucular ile ilgili tüm detaylı bilgileri “Sunucu Nedir? Sunucu Ne İşe Yarar? Sunucu Çeşitleri Nelerdir?” başlıklı yazımızda bulabilirsiniz.

Sunucu (Server) Nedir?
Sunucu, ağdaki diğer bilgisayarların (istemciler) erişebildiği ve belirli işlemleri gerçekleştirmek için özel olarak yapılandırılmış yüksek performanslı güçlü bilgisayarlardır. Genellikle özel donanımlar ve yazılımlar kullanırlar ve çok sayıda kullanıcının aynı anda erişebilmesine olanak tanırlar. Bu nedenle, sunucular genellikle yüksek güç tüketir ve yüksek performanslı işlemciler, yüksek kapasitede RAM ve büyük depolama alanları gerektirir.

Bütün bu sisteme istemci-sunucu (client-server) modeli denir. Bu sistem, diğer bilgisayarların isteklerine yanıt vermek için kullanılır; genellikle “hizmetler” olarak adlandırılan verileri depolamak, işlemek ve dağıtmak gibi işlemleri sağlayabilir.

Sunucular özünde bilgisayar olsalar da kullanmış olduğumuz kişisel bilgisayarlardan çok daha güçlü cihazlardır. Bu bilgisayarlar aktif oldukları süre boyunca sürekli olarak çalışırlar. Bu yüzden çok fazla enerji tüketimine sahiptirler. Sürekli çalıştıkları için de ortama yüksek miktarda ısı yayarlar. Sunucuların sağlıklı olarak çalışabilmesi için iyi bir soğutma ortamına ihtiyaçları vardır. Bu nedenlerden dolayı sunucu merkezlerinde birden çok sunucu aynı anda barındırılır. Bulundukları ortam ise hem siber hem de fiziki olarak korunaklı yerlerdir.

Sunucular aynı zamanda birçok farklı yazılım ve hizmeti barındırabilir. Örneğin bir web sunucusu, web uygulamalarının çalışması için gerekli olan yazılım ve hizmetleri barındırabilir. Aynı şekilde, bir e-posta sunucusu, e-posta hizmetleri için gerekli olan yazılım ve hizmetleri barındırabilir.

Ayrıca sunucular, genellikle çok yönlü ve esnek yapılıdır. Örneğin, bir sunucu birden çok hizmeti aynı anda barındırabilir veya bir sunucunun gücü ve performansı, ihtiyacınıza göre artırılabilir. Geniş bir yelpazede kullanılabildiği için sunucular birçok farklı işletme ve organizasyonun ihtiyacını karşılayabilirler.

Sunucular fiziksel bir makineye, sanal bir makineye veya sunucu hizmetlerini yerine getiren yazılıma atıfta bulunabilir. Sunucunun çalışma şekli, sunucu kelimesinin nasıl kullanıldığına bağlı olarak önemli ölçüde değişir.

İlgili İçerik: E-Posta Pazarlama Nedir?

Sunucu (Server) Ne İşe Yarar?
“Sunucu Nedir?” sorusu kadar sunucuların ne işe yaradığı da kullanıcılar tarafından sıklıkla merak edilmektedir. Sunucular, birçok farklı işlemi gerçekleştirmek için kullanılabilir. Örneğin bir internet sitesine girdiğinizde; depolanan bilgiler, görseller, ürünler gibi internet sitesindeki birçok detayı görebilmeniz sunucu sayesinde gerçekleşir. Ya da bir web sitesi kurmak için girişim başlattığınızda, yine en çok ihtiyacınız olan şey sunucu olacaktır. Tabii ki sunucuların tüm işlevleri bunlar değildir; sunucuların birçok kullanım şekli vardır.

Sunucuların kullanım alanları aşağıdaki gibi listelenebilir:

Sunucular, verilerin depolanması için kullanılabilir. Örneğin, bir web sunucusu web sayfalarının içeriğini depolayabilir ve istemcilerin isteklerine yanıt olarak gösterebilir.
Verileri işlemek için kullanılabilir. Örneğin bir veritabanı sunucusu, verileri alıp saklayabilir ve istemcilerin sorgularına yanıt olarak verileri döndürebilir.
Sunucular, çeşitli hizmetleri sağlamak için kullanılabilir. Örneğin, bir e-posta sunucusu e-posta hizmeti sağlayabilir ve istemcilerin e-posta gönderip almasını sağlayabilir.
Sunucular, uzaktan erişim sağlamak için kullanılabilir. Örneğin bir VPN sunucusu, kullanıcıların uzaktaki ağlara güvenli bir şekilde bağlanmasını sağlayabilir.
Sunucular, web sitelerinin barındırılması için kullanılabilir. Örneğin bir web sunucusu, web sitelerinin içeriğini istemcilerin isteklerine yanıt olarak gösterebilir.
İlgili İçerik: Hosting Nedir?

Sunucu Nasıl Çalışır?
Sunucu Nasıl Çalışır?
Sunucunun bir bilgisayar olduğundan bahsetmiştik. Bu bilgisayarların bir arada olduğu tesislerde yüzlerce sunucu düzenli bir şekilde konumlandırılır. Daha sonra bu sunucu bilgisayarlar işlevlerine göre çalışmaya hazır hale getirilir. Örneğin, bir web sunucusu Apache veya Nginx gibi bir web sunucu yazılımı, bir veritabanı sunucusu ise MySQL veya MongoDB gibi bir veritabanı yazılımı kullanabilir.

Sunucular, genellikle birden fazla işlem gerçekleştirebilir. Örneğin, bir web sunucusu web sayfalarının içeriğini dinamik olarak oluşturabilir ve veritabanından veri çekebilir. Aynı zamanda bir web sunucusu dosya yükleme/indirme veya e-posta gibi işlemleri gerçekleştirebilir.

Çalışır hale getirilen sunucular sisteme dahil edilerek hizmete hazır hale getirilir. Daha sonrasında da belirli aralıklarla sunuculara bakım ve yedekleme işlemi yapılır. Böylelikle sunucuların sürekli olarak performanslı bir şekilde hizmet verebilmesi sağlanır.

Bir web sunucusunun çalışma şeklini basitçe anlatarak sistemin nasıl çalıştığına dair bir örnek verelim.

Bir hosting hizmeti satın alan kişi veya sunucu sahibi, sunucu içerisine web sitesini oluşturan kodları, görselleri ve ilgili dosyaları sunucunun barındırması için yükler. Ardından sunucular sayesinde ilgili web sitesi internet ortamında görünür hale gelir.
Daha sonrasında ilgili web sitesine ulaşmak isteyen ziyaretçiler, sitenin URL adresine ulaştıktan sonra sunucuya bir istek gönderilir.
Sunucu da çeşitli kontrolleri sağladıktan sonra siteyi ziyaret eden kişiye ilgili içeriğe yönlendirir.
İlgili İçerik: Domain Nedir?

Sunucu Türleri Nelerdir?
Sunucu Türleri Nelerdir? Sunucu Çeşitleri Nelerdir?
Sunucular birçok farklı türde olabilir ve işletilen işlemler veya kullanılan teknolojilerine göre sınıflandırılabilir. Aşağıda sunucu türlerinden bazıları verilmiştir:

Fiziksel Sunucular
Anakart, işlemci, bellek ve giriş/çıkış denetleyicileri içeren donanım bazlı bir sunucudur. Bir seferde sadece tek bir işletim sistemi çalıştırabilen fiziksel sunucular, Windows, Linux gibi işletim sistemlerini çalıştırabilir.

Fiziksel sunucular, tek bir kullanıcıya özel çalıştırılabileceği gibi, birden fazla kişiye de hizmet verebilir. Tek kullanıcıya izin veren fiziksel sunuculara dedicated (özelleştirilmiş) sunucu denir.

Fiziksel sunucu yatırımı yapmak diğer seçeneklere göre daha masraflı olabilir.

Web Sunucusu
Bir web sunucusu, bir web sitesi içeriğini kullanıcılara erişilebilir hale getirir. Kullanıcılar tarayıcılarını kullanarak web sitesine giderler ve sunucu tarafından yanıt olarak web sayfası geri gönderilir.

Örneğin, Apache Web Server, Nginx, Boa Webserver, FoxServ Web Server, Lighttpd, Microsoft Web Server, IIS, Savant, ve Tomcat web sunucularına örnek gösterilebilir.

Veritabanı Sunucusu
Bir veritabanı sunucusu, veritabanı işlemlerini gerçekleştirir. Kullanıcılar veritabanından veri çekebilir veya veri ekleyebilir.

Veritabanı sunucuları genellikle MySQL, MongoDB gibi veritabanı yazılımlarını kullanır.

Dosya Sunucusu
Bir dosya sunucusu, dosyaların depolanması ve paylaşılması işlemlerini gerçekleştirir. Kullanıcılar dosya sunucusuna dosyaları yükleyebilir veya indirebilir.

Örnek olarak FileZilla ve Microsoft Internet Information Services önemli dosya sunucularıdır.

E-Posta Sunucusu
Bir e-posta sunucusu, e-posta işlemlerini gerçekleştirir. Kullanıcılar e-posta sunucusuna e-posta gönderebilir veya e-posta alabilir.

SMTP, POP3, ve IMAP, e-posta sunucularına örnek olarak gösterilebilir.

VPN (Virtual-Private-Network) Sunucusu
Sanal özel ağ olarak çevirebileceğimiz VPN’ler, cihazınız ve VPN sunucu arasında güvenli bir bağ kurarak kolay, hızlı ve güvenli bir şekilde internet bağlantısı kurmanızı sağlar. Üçüncü parti bir VPN sağlayıcısından hizmet alabileceğiniz gibi, kendi bilgisayarınızda veya bulutta VPN sunucusu da oluşturabilirsiniz.

Terminal Sunucusu
Cihazları yerel ağa (LAN) bağlayan terminal sunucusu, veri şifrelemesi ve kullanıcı kimlik doğrulama gibi güvenlik işlevleri sunan yüksek güvenlik koruması sunar.

Örneğin, gelişmiş güvenlik işlevlerine sahip bir terminal sunucusuna ihtiyaç duyan şirketler, belirli bir ağ üzerinde bulunan yetkili personelin erişim sağlayabileceği bir terminal sunucusuna yatırım yapabilir.

Terminal sunucusu bazen iletişim sunucusu olarak da adlandırılır.

Bulut (Cloud) Sunucusu
Bulut sunucuları, sınırsız kullanıcılar tarafından isteğe bağlı olarak erişilebilen bir bulut bilişim ortamında çalışan sanal (fiziksel olmayan) sunuculardır. Bulut sunucuları, fiziksel sunucular gibi çalışır ve veri depolama ve uygulama çalıştırma gibi benzer işlevleri yerine getirirler.

Bulut hizmetleri üçüncü bir parti hizmet sağlayıcı tarafından barındırıldığından, bilişim kaynakları ağ üzerinden, çoğunlukla internet üzerinden sağlanır.

Bulut sunucuları uzaktan erişildiği için genellikle geleneksel sunuculardan daha kararlı ve güvenlidir. Ayrıca, bulut sunucuları sınırsız kapasite sunarken, fiziksel sunucuların mevcut altyapıları veya bilişim kapasiteleri sınırlıdır.

Bulut sunucular kimi zaman sanallaştırma ile de çalışabilir. Sunucu sanallaştırma, bir yazılım uygulaması aracılığıyla fiziksel bir sunucunun birden fazla benzersiz ve izole sanal sunucuya bölünmesi işlemidir. Her sanal sunucu, kendi işletim sistemlerini bağımsız olarak çalıştırabilir. Böylece, daha yüksek sunucu kapasitesi elde edilir.

Edge Sunucusu
Veri işleme sistemlerinin gerçekleşmesi gereken ağ kenarına yerleştirilen edge sunucusu, NEMA kabinlerinde, çölün ortasındaki özel dolaplarda, bir dolapta, bir depoda, bir masada veya hatta bir kaynak atölyesinin tam ortasında kurulabilirler. Böylece erişimin kısıtlı olduğu tüm alanlara da hizmet verebilirler.

Oyun Sunucusu
Bir oyun sunucusu, çok oyunculu bir oyunun mevcut durumunu tanımlamak için merkezi bir otorite olarak hareket eden bir bilgisayardır.

Oyuncular, oyun içinde ne yaptıkları hakkında sunucuya otomatik güncellemeler gönderirler; sunucu, bu girdileri çevirir ve bilgiyi oyundaki diğer oyunculara geri döndürür.

FTP Sunucusu
Dosya transfer protokolü sunucusu (genellikle FTP Sunucusu olarak bilinir), dosyaların TCP/IP ağı üzerinden güvenli bir şekilde değiştirilmesini sağlayan bir bilgisayar yazılımıdır.

Ağ seviyesinde çalışan standart bir iletişim protokolü olan dosya transfer protokolü (FTP) çalıştırılarak, bir istemci-sunucu mimarisindeki cihazlar arasında güvenli bir bağlantı kurulabilir ve veriler internet üzerinden verimli bir şekilde iletilir.

Medya Sunucusu
Medya sunucusu, isteyen istemcilere video ve ses içeriği sunar. Bu terim, bu işlevi yerine getiren bir yazılım uygulamasına ve medya sunucusu yazılımını çalıştıran bir ana bilgisayara atıfta bulunmak için kullanılır.

Medya sunucularının en yaygın kullanımı muhtemelen talep üzerine video hizmeti (VOD) sağlamaktır. Bu durumda, medya sunucusu önceden kaydedilmiş video içeriğini depolamadan alır ve internet üzerinden teslim eder. En basit durumda, video dosyası bir web sayfasına gömülüdür ve sayfanın diğer bileşenleriyle aynı ana bilgisayarda depolanır.

Netflix, Amazon ve Disney Plus gibi abonelik hizmetleri, dünya genelinde yer alan medya sunucularının içerik dağıtım ağları (CDN) aracılığıyla milyonlarca müşteriye video sunar. Medyalar kimi zaman canlı yayın olarak da sunulabilir.

Uygulama Sunucusu
Uygulama sunucusu, bir iletişim protokolu aracılığıyla, bir işletim sistemi (OS) ile dış kaynaklar (örneğin, veritabanı yönetim sistemi [DBMS], iletişim ve İnternet hizmetleri) arasında yer alan sistem yazılımıdır.

Bir uygulama sunucusunun temel görevi, müşterilerine genellikle iş mantığı (business logic) olarak adlandırılan ve dinamik içerik oluşturan ve veri alışverişini sağlayan algoritmayı sağlamaktır. İş mantığı, bir işletme, hizmet veya uygulama tarafından sunulan özel uygulamarı sağlamak için verileri dönüştüren kodu ifade eder. Bir uygulama sunucusu, verileri dinamik içeriğe dönüştürebilir. Dinamik içerikler arasında gerçek zamanlı içerikler de bulunmaktadır.

Bir uygulama sunucusu aracılığıyla içerik barındırmak, işletmelerin verileri gerçek zamanlı olarak takip etmesine izin vererek idari ve pazarlama görevlerini yönetmelerine yardımcı olabilir.

Microsoft .NET, JAVA’nın Jakarta EE, Weblogic, JBoss ve Websphere uygulama sunucularına örnek olarak gösterilebilir.

Sunucular birçok farklı türde olabilir ve işletilen işlemler veya kullanılan teknolojilerine göre sınıflandırılabilir. “Sunucu Ne İçin Kullanılır?” alt başlığımızda tüm sunucu çeşitlerinin kullanım alanlarını detaylıca açıklayacağız.

Sunucu Ne İçin Kullanılır?
Sunucu Ne İçin Kullanılır?
Sunucular birçok farklı amaç için kullanılabilir. Bir sunucunun ana görevi, verileri ve kaynakları paylaşmanın yanı sıra, iş yükünü de dağıtmaktır. Böylece sunucuya bağlı olarak çalışan bilgisayarlar, sunucunun gücünden yararlanarak görevlerini gerçekleştirebilir.

Örneğin, dünyada internete bağlı olarak çalışan milyonlarca sunucu, İnternet’e bağlı olarak çalışmaktadır ve bir İnternet kullanıcısının gerçekleştirdiği neredeyse her işlem, bir veya daha fazla sunucuyla bir veya daha fazla etkileşim gerektirir.

“Sunucu Çeşitleri” başlığında da aktardığımız gibi sunucular birçok farklı amaç için kullanılabilir. Önemli olan, sunucunun işletilen işlemleri gerçekleştirebilmesi ve kullanıcı isteklerini işleyebilmesidir.

Sunucu ile İlgili Sıkça Sorulan Sorular
“Sunucu Nedir?” adlı içeriğimizin bu bölümüne kadar sizler için sunucular hakkında pek çok konuyu ele aldık. İçeriğimizin kalan kısmında konu ile alakalı sıkça sorulan sorulara yanıtlandıracağız.

Sunucu Bir Bilgisayar Mıdır?
Sunucular genellikle bir bilgisayar olarak tanımlanır. Sunucular, yüksek performanslı ve çok sayıda işlem gerçekleştirebilen donanımlara sahiptir. Yüksek miktarda bellek ve işlemci gücüne sahip olurlar, bu da sunucuların çok sayıda kullanıcıya veya çok sayıda işlem yapabilmesine olanak tanır.

Fakat sunucu her zaman bir bilgisayar olmak zorunda değildir; bazen bir yazılım veya bir depolama cihazı dahi sunucu olarak kullanılabilir.

İlgili İçerik: Proxy Nedir?

Sunucu İşletim Sistemi Nedir?
Belirli bir ağ üzerindeki bilgisayarların yönetimi için özel olarak tasarlanmış bir işletim sistemi türüdür. Bazı popüler sunucu işletim sistemi örnekleri arasında Windows Server, Linux, Unix, IBM AIX ve Solaris yer almaktadır. Bu işletim sistemleri, genellikle yüksek performanslı sunucu donanımları üzerinde çalışır.

Sunucu işletim sistemleri, uzun süre çalışması gereken sunucular için ekstra güvenlik sağlamasının yanı sıra, yedekleme ve kurtarma özellikleri de içerir. Ayrıca, sunucu işletim sistemleri ile sunucular daha kolay bir şekilde yönetilebilir; sunucular bu sayede daha hızlı bir şekilde hizmet verir.

İşletmeler Sunucuları Ne İçin Kullanır?
Bir e-ticaret sitesinin internet üzerinden müşterilerine hızlı ve kolay bir şekilde hizmet verebilmesi için internet sitesinin de hızlı ve sorunsuz bir şekilde çalışması çok önemli. Eğer internet siteniz yavaş çalışırsa, sitenizin arama motoru optimizasyonu (SEO) da zarar görebilir, bu da rakiplerinize kıyasla arama motorlarında daha alt sıralarda müşterilerinizin karşısına çıkmanıza sebep olur. Ayrıca müşterilerinizin sitenize duyduğu güven de azalacağından satışlarınız negatif olarak etkilenecektir.

İşletmeler sunucuları ayrıca aşağıdaki sebeplerden dolayı da kullanabilir:

İş e-postaları ve veritabanlarının barındırılması,
Dosyaların paylaşımı ve depolanması,
Uzaktan masaüstü bağlantıları sağlanması,
Web siteleri ve uygulamaların barındırılması,
Sistem ve veri yedeklemelerinin yapılması.
İşletmeler Kendilerine Uygun Sunucuyu Nasıl Bulabilir?
Küçük bir işletme için bir sunucuya yatırım yapmak önemli bir adımdır. Arama yapmaya başlamadan önce, neden bir sunucuya ihtiyacınız olduğunu tam olarak belirlemeniz gerekir. Belirli ihtiyaçlarınızı belirledikten sonra, bir sunucu satın almak veya kiralamak arasında seçim yapmalısınız. Fakat unutmayın ki, satın aldığınız sunucu kesin bir şekilde belirlenmiş değildir. İhtiyaçlarınız geliştikçe, çoğu sunucu yükseltilebilir ve özelleştirilebilir.

Sunucu tercihinizi yaparken piyasa araştırması yapmanın yanı sıra IT (bilgi-teknoloji) departmanınızın bilgisinden de mutlaka yararlanmalısınız. Gerekli görüldüğü durumlarda dışarıdan da destek almayı düşünebilirsiniz.

Kendinize uygun sunucuyu bulmak için aşağıdaki soruları cevaplamanız oldukça önemli:

Ne kadarlık bir bütçeniz var?
Şimdi ve gelecekte ne kadarlık bir hafızaya (memory) ihtiyacınız olacak? Şu anki site trafiğiniz nasıl? Gelecekte nasıl olacağını öngörüyorsunuz? Trafiğiniz belli günlerde aniden artıyor mu?
Ne kadar çok ürününüz var?
İnternetinizin bant genişliği nasıl?
Ne tür bir sunucuya yatırım yapmalısınız?
Sunucu kiralamalı mısınız yoksa satın mı almalısınız?
Seçeceğiniz sunucuyu çalıştırmak için gerekli elektrik gücüne sahip misiniz?
Seçeceğiniz sunucu ne kadar güvenli? Sunucunun ve sunucu ağının güvenliğini nasıl sağlayacaksınız?
Eğer fiziksel bir sunucuya yatırım yapacaksanız, fiziksel bilgisayarları yerleştirebileceğiniz bir alanınız var mı?
Eğer sunucularınız beklenmedik bir şekilde çökerse, yeniden başlatılırken veya geri yüklenirken işletmeniz ne kadar süre dayanabilir? Sunucularınızın çökmemesi için en iyi sunucuyu nasıl bulabilirsiniz?

Sunucu bakımlarını nasıl yapacaksınız?
Sunucu Fiyatları Ne Kadardır?
Yukarıda da bahsettiğimiz üzere, sunucular sürekli olarak bakım gerektiren ve kullanım maliyetleri oldukça yüksek cihazlardır. Bunun yanı sıra ihtiyacınıza göre hızlı bir sunucuya sahip olmak isterseniz satın alma maliyetleriniz artabilir. Eğer bir sunucu satın almak istiyorsanız bunun için çok fazla bütçe ayırmanız gerekebilir. Sunucu ihtiyacınızı sadece satın alarak değil, ihtiyacınıza uygun bir sunucu hizmeti kiralayarak çok daha uygun fiyatlara bu ihtiyacınızı karşılayabilirsiniz. Bu fiyatlar satın almayı veya kiralamayı düşündüğünüz hizmet türüne göre farklılık gösterebilir. Sunucu (server) fiyatları konusunda detaylı bilgiyi yetkili kuruluşlardan edinebilirsiniz.

14/01/2024

JSON Nedir ve Ne İçin Kullanılır?

JSON Nedir ve Ne İçin Kullanılır? sorusu modern web geliştirmede ustalaşmak isteyenler için önemlidir çünkü JSON, nesnelerin interneti (IoT) ve sosyal medya uygulamaları gibi alanlarda sıklıkla kullanılmaktadır.

Web uygulamalarında kullanıcıların değiştirdikleri ayarları her seferinde yenilemelerine gerek kalmaması için, kullanıcı deneyimi açısından birçok geçici yapılandırmanın veya verinin depolanması gerekir.

Bu değişikliklerin veya geçici verilerin depolanmasında Oracle veya Mariadb gibi veritabanları kullanılabilir ama bu verimli bir çözüm değildir. Verileri bir metin dosyası olarak saklamak depolama sorununu çözer. Ancak bu aşamada verileri farklı uygulamalar arasında kolaylıkla paylaşabilecek bir tür evrensel formata ihtiyaç duyulur.

Veri Serileştirme denen işlem yapılandırılmış verileri, gerektiğinde orijinal yapısının kurtarılmasına olanak tanıyan bir biçimde paylaşılmasına veya saklanmasına olanak tanıyan bir biçime dönüştürmek anlamına gelir. JSON; veri serileştirme için en yaygın kullanılan format olarak bu noktada karşımıza çıkar.

JSON Nedir?
JSON (JavaScript Object Notation), basit veri yapılarını temsil etmek için tasarlanmış bağımsız bir veri değişim formatıdır. Esas olarak iki sistem arasındaki veri alışverişi için kullanılır. Örneğin JSON kullanarak sunucu ile web uygulaması arasında veri aktarabilirsiniz.

Sistemler arası veri aktarımı ile çalışan teknolojilerin çoğu JSON formatını destekler.

Hemen hemen her ana dil, JSON dizelerini o dildeki nesnelere veya sınıflara ayrıştırmak için bir tür kitaplığa veya yerleşik işlevselliğe sahiptir. Bu, bir programlama dili içinde JSON verileriyle çalışmayı son derece kolaylaştırır.

Resmi web sitesi 2002’de açılan JSON, 2013 yılında bir ECMA standardı haline gelmiştir.
JSON formatı 2000’lerin başında Douglas Crockford tarafından belirlenmiştir. Aralık 2005’te Yahoo! web hizmetlerinden bazılarını JSON biçiminde sunmaya başlamıştır ve JSON, 2013 yılında bir ECMA standardı haline gelmiştir.

JSON’un Özellikleri
JSON’da; cep telefonları, web tarayıcıları, sunucular ve IoT cihazları dahil olmak üzere çeşitli kaynaklardan ve cihazlardan gelen yarı yapılandırılmış veriler “events” adı verilen mesajlar olarak toplanır, gruplar halinde mantıksal olarak düzenlenir ve ardından bir veri hattı aracılığıyla bir veri platformuna beslenir. JSON’un özelliklerini şu şekilde sıralayabiliriz:

Yapılandırılmış verileri bir ağ bağlantısı kullanarak iletmenize ve serileştirmenize olanak tanır.
Veri yapısından oluşan veri nesnelerini iletmek için insanlar tarafından okunabilir metinler kullanır.
JavaScript programlama diline dayanır.
Tarayıcı eklentileri ve web siteleri gibi JavaScript uygulamalarıyla kullanılabilir.
Tüm tarayıcıları destekler. Çok sayıda işletim sistemiyle uyumludur.
Okuması, yazması, oluşturması ve yönetmesi kolaydır.
API’ler ve web hizmetlerinde verileri biçimlendirmek ve aktarmak için kullanır.
Tüm önemli JavaScript çerçeveleri tarafından desteklenir
Orijinal olarak JavaScript spesifikasyonunun (ECME-Script) bir alt kümesi olarak türetilmiştir.
JSON’daki veri yapıları, anahtar / değer çiftlerine dayanır.
JSON sözdizimi, verilerin kolay ayrıştırılmasını ve daha da hızlı uygulanmasını sağlar.
Çoğu modern programlama dilinde ayrıştırılabilir. Metin tabanlı yapısı nedeniyle Javascript, C, C ++, C #, Perl, Java, Python, Php gibi programlama dilleri ve platformları JSON’u destekler.
JSON, çok karmaşık büyük verileri işlemek için uygun değildir. Zengin metin veya resimler gibi multimedya biçimlerini desteklemez.
JSON Veri Türleri ve Sözdizimi Kuralları
Tarayıcı uzantısını ve web sitelerini içeren JavaScript tabanlı uygulamalarda yaygın olarak kullanılan JSON çok sayıda veri türünü destekler:

Sayı
Dize (String) -Unicode karakter dizesi
Boolean (true / false)
Dizi (Array) – Kapalı parantez [] içinde yer alan veri koleksiyonları ve / veya listeleri
Nesne – Sırasız anahtar / değer çiftleri
Null – Boş değer
JSON, dilden bağımsızdır ancak C ailesi dillerini kullanan programcıların aşina olduğu içeriği kullanır.

JSON nesneleri programlama ihtiyaçlarınıza göre düzenlenebilir. Nesneler, anahtarları parametre olarak kullanmamıza ve çeşitli durumlar için yeniden kullanılabilir tanımlar oluşturmamıza yardımcı olurlar.

JSON’un yapısını tanımlayan bazı kurallar söz konusudur:

{"FirstName": "Liza", "lastName": "Bon", "age": 35, "e-posta": "[email protected]"}
Temel olarak, bir JSON nesnesi küme parantezleri “{}” ile tanımlanır. Sol küme parantezi “{” nesnenin başlangıcını ve sağ küme parantezi “}” nesnenin sonunu temsil eder.
JSON içindeki veriler, anahtar / değer çifti şeklinde düzenlenir. Sol taraf anahtarı temsil eder ve sağ taraftaki veriler değeri temsil eder. Hem anahtar hem de değer iki nokta üst üste “:” işareti ile ayrılır.
Anahtarların metin ve geçerli JSON veri türleri olarak kabul edilen değerler olması gerekir.
Her bir anahtar / değer çifti kümesi, virgül “,” kullanılarak diğerinden ayrılır.
Diziler, bir JSON nesnesi içinde köşeli parantezler “[]” kullanılarak tanımlanır.
JSON Ne İçin Kullanılır?
JSON Nedir, Json Ne İçin Kullanılır?
NASA, bilimsel ve astronomik verileri JSON formatında ücretsiz olarak halka açık bir API aracılığıyla sunar.
JSON çok sayıda uygulamada kullanılabilir. Özellikle sunucular ve web uygulamaları arasında veri aktarımı için kullanımı yaygındır. Bunun nedeni, bu uygulamaların genellikle verileri yalnızca metin olarak alabilmesi ve JSON’un metin tabanlı olmasıdır.

Küçük dosya boyutu nedeniyle http istekleri ve yanıtları için JSON kullanılır.

Her tür yapılandırılmış verinin iletilmesine ve serileştirilmesine yardımcı olan JSON; Twitter, Facebook ve NASA tarafından sağlanan API’lerle çalışırken de kullanılır. NASA, bilimsel ve astronomik verileri JSON formatında ücretsiz olarak halka açık bir API aracılığıyla sunar, bu verilerle Python kullanarak çalışabilirsiniz. İnternetteki verilerle çalışmak için, bir ağ bağlantısı üzerinden veri gönderip almanıza olanak tanıyan istek kitaplığını kullanabilirsiniz. Aşağıdaki örnekte, NASA API’den veri almak ve depolamak için istek kitaplığının kullanıldığını görebilirsiniz.

import requests
r = requests.get("https://api.nasa.gov/planetary/apod?api_key=DEMO_KEY")
NASA = r.json()
print(NASA)
JavaScript ile çok iyi entegre olan JSON tarayıcı eklentileri içeren JavaScript tabanlı uygulamalar yazmak için de kullanılır. JSON, JavaScript’in yalnızca bir alt kümesidir, bu da JSON’da yazdığınız her şeyin geçerli JavaScript olduğu anlamına gelir, JavaScript’ten türetildiği için, çoğu çağdaş programlama dili JSON verilerini ayrıştırabilir ve oluşturabilir.

JSON, veri aktarımını kolaylaştırdığı için veri ağırlıklı sosyal medya uygulamaları arasında da popülerdir. Instagram’da JSON verileri; resimler, kullanıcılar ve beğenilerden oluşan değer listeleri içerir.

JSON hakkında ustalaşmak IoT uygulamaları geliştirmede önemlidir. IoT uygulamalarındaki cihazlardan ve sensörlerden gelen veriler normalde JSON formatında gönderilir.

Ayrıca yazılım testinde kalite güvencesi (Quality Assurance), bir kuruluş tarafından müşterilere sağlanan yazılım ürünlerinin veya hizmetlerin kalitesini sağlamak için bir prosedür olarak tanımlanır. QA Testi olarak da bilinen kalite güvencesi, yazılım geliştirme sürecini iyileştirmeye ve yazılım ürünleri için tanımlanan kalite standartlarına göre süreci verimli ve etkili hale getirmeye odaklanır.

Bu amaçla JSON, sistemler arasında bağlantı olarak kullanılabilir ve bu bağlantıyı test edebilir. Örneğin, iş ortamında tek bir sistemin (buna A diyelim) muhasebe departmanındaki tüm çalışan verilerine sahip olduğunu varsayalım. Verilerin her gün sistem B’ye taşınması isteniyor olsun. Bunun için A’dan gelen tüm verilerin B’deki bir tabloya gitmesi ve ardından B’nin verileri doğru çalışana göre eşleştirerek belirli bir şekilde düzenleyip sıralaması gerekir. Veriler sisteme girdikten sonra B, verilerin veritabanına doğru bir şekilde gittiğinden emin olunması için çıktı JSON’u gönderir. Böylece başarılı veri hareketi doğrulanmış olur.

JSON ve XML Farkı
Bir web sunucusundan veri almak için hem JSON hem de XML kullanılabilir. Basit tasarımı, esnekliği, kullanım ve anlaşılma kolaylığı nedeniyle, web ve mobil uygulamalar için yaygın olarak kullanılan JSON yarı yapılandırılmış veriler için XML’ye alternatiftir çünkü daha sıkıştırılmış nesne temsilleri sağlayabilir.

XML’ye kıyasla okunması kolaydır. XML gerekenden çok daha fazla kelime kullanır, bu da okumayı ve yazmayı zaman alıcı hale getirir.

XML, bir XML ayrıştırıcı tarafından çözümlenmelidir ancak JSON, standart bir JavaScript işlevi ile ayrıştırılabilir. XML’in ayrıştırılması JSON’dan çok daha zordur. Büyük XML dosyalarının ayrıştırılması yavaştır ve çok fazla bellek gerektirir.

Aşağıda da görebileceğiniz gibi, XML yapısı sezgisel değildir ve kodda temsil edilmesini zorlaştırır. Öte yandan, JSON yapısı çok daha kompakt ve sezgiseldir, bu da herhangi bir programlama dilinde nesnelerin okunmasını kolaylaştırır.

databases.xml

XML, gerçek veriler için anlamsal yapılar içerebilir, JSON böyle bir yapı için anahtar-değer çiftlerinin kullanılmasını gerektirir.
databases.json

JSON, bitiş etiketini kullanmaz.
En popüler veri değişim yöntemlerinden biri olan JSON’un XML’den ayrılan diğer özellikleri şunlardır:

JSON’da dize, tamsayı, boolean gibi nesne türleri vardır, ancak XML nesneleri tür olarak tanımlamaz. Tüm XML nesneleri yalnızca tek bir veri türü, yani dize olarak kategorize edilir.
JSON, XML’den daha hafif ve daha hızlıdır.
JSON şemadan yoksundur, bu da tür ve sözdizimi denetimini daha az verimli ve hatalı biçimlendirilmiş verilere daha yatkın hale getirir.
JSON verilerine JavaScript kullanılarak bir JSON nesnesi olarak kolaylıkla erişilebilir. XML verilerinin API’ler kullanılarak ayrıştırılması ve değişkenlere tahsis edilmesi gerekir. Bir JSON’dan değer elde etmek, JavaScript programlamanızdan bir nesneyi okumak kadar kolaydır. Bu metin tabanlı hafif yapı, JSON’u XML’den daha erişilebilir ve kullanışlı hale getirir.
JSON Dosyası Nasıl Açılır?
JSON Dosyası Nasıl Açılır?
JSON’daki veri yapıları, anahtar / değer çiftlerine dayanır.
JSON dosyası Windows’un yerleşik Not Defteri gibi normal metin düzenleyicileri kullanarak açılabilir. Yapmanız gereken ilk şey, sonunda .json uzantısı olan bir dosya oluşturmaktır. Dosyada bir nesne oluşturmak için açma ve kapama küme parantezlerini {} kullanmalıyız ve bunun içine nesnemizi oluşturan tüm anahtar-değer çiftlerini yerleştirmeliyiz.

JSON içindeki her bir özellik bir anahtar-değer çiftidir. Anahtar, çift tırnak işareti ve ardından iki nokta üst üste işareti: ve ardından bu anahtarın değeri ile çevrelenmelidir. Birden fazla anahtar değer çiftimiz varsa, normal bir programlama dilinde bir dizi oluşturmamıza benzer şekilde, anahtar değer çiftlerimizden her birini ayıran virgüllere ihtiyacımız vardır.

Aşağıdaki örnekte, dosyamızın adı user.json. Dosyanın içinde farklı veri türlerimiz bulunuyor.

# user.json
{
"name": "jane",
"age": 34,
"isProgrammer" true,
"hobbies": ["swimming", "reading", "classic müsic"],
"friends": [{
"name": "joey",
"age": 39,
"isProgrammer": false,
"friends": [...]
}]
}
Dilerseniz JSON’la ilgili popüler ve ücretsiz çevrimiçi kaynaklara göz atabilirsiniz:

JSONLint – JSON dizesinin geçerli olup olmadığını doğrulamak için kullanabileceğiniz bir JSON doğrulayıcı.
JSON.dev – JSON’u görüntülemek, ayrıştırmak, doğrulamak, küçültmek ve biçimlendirmek için kullanabileceğiniz bir araç.
JSON Schema – JSON belgelerine kendi özel formatınıza göre açıklama eklemenizi ve doğrula yapmanızı sağlar.

Address

YÜKSEL REKLAM/SÜSLEME EVİ Gazi Mahallesi Gazi Cad. No:43 Sultangazi/
Istanbul
5064

Alerts

Be the first to know and let us send you an email when İzdüşümü Yazılım posts news and promotions. Your email address will not be used for any other purpose, and you can unsubscribe at any time.

Contact The Business

Send a message to İzdüşümü Yazılım:

Share