Windows Server Hakkında soru

Windows server kullanarak bilgisayarımı sunucu yapıp ve port açarak socket ile başka cihazlardan server arası dosya alış-verişi yapabilirmiyim?

1 Beğeni

Sorunun cevabi “evet” ama yanlis soruyu soruyormussun gibi geldi.

Oncelikle internete baglanma kapasitesi olan herhangi bir cihazda port acarak soket ile baska cihazlarla bilgi alisverisinde bulunabilirsin, Windows versiyonunun (hatta isletim sisteminin Windows olmasinin, hatta isletim sisteminin var olmasinin) bir onemi yok.

Soket uzerinden her turlu bilgi alisverisi yapabilecekken spesifik olarak dosya transferi sorman aklinda bir uygulama oldugunu gosteriyor. Bunun ne oldugunu anlatirsan daha iyi yardimci olabiliriz. Hic olmadi bir protokolden bahsetmen daha faydali olur, “socket” fazla genel bir terim (ve “port” manasiz).

Yapmak istedigim sosyal medya uygulamaları gibi, ama degil. server kurmak yada kullanmak gibi bir bilgim yok. baglanma kısmını da socket de port ile servere baglanmayı düşündüm. server yapacagım bilgisayarda deneme amaçlı ama server kurmayı araştırmama ragmen düzgün bir şey bulamadım. Tek buldugum vpn server kurup ordan da ftp ile dosya aktarımı yapmak.
(socket dedigim şey de pythonun modülü olan socket yada daha kullanışlı bir modül varsa bilmiyorum.)

Hmm tamam, anladim.

“Socket” bugun neredeyse butun isletim sistemlerinin bir varisini kullandigi BSD sockets implementasyonundan geliyor ve “herhangi bir network ile konusmaya yarayan isletim sistemi ogesi” gibi bir anlami var. Bu arada orijinal API’ye bakarsan bugunku Python’un da onu taklit ettigini goreceksin (sebebi ise isletim sistemlerinin hala ayni API’yi sunmasi).

“Port acmak” dedigin birer adet bind(2) ve listen(2) cagrisindan ibaret. Belki internet uzerinden erisim icin aradaki NAT mekanizmalarinda gerekli port yonlendirmelerini yapmayi da ekleyebiliriz.

Hangi protokolun server’indan veya nasil bir server bilgisayarindan bahsediyoruz?

Herhangi bir protokolun server’ini kurmak istiyorsan herhalde en kolay ve gorunur olani bir HTTP server’i olur. NGINX veya Apache HTTP Server’a bakabilirsin.

Serverı kuracağım yer laptop. Şuanlık deneme amaçlı, server konusu anlarsam bir sunucu kiralarım yada alırım. Ama şuanlık dedigim gibi laptopu sunucu yapıp ordan programı çalıştırcam.

Programı deneme amaçlı özel bir şey yapmanıza gerek yok, aynı bilgisayarda hem server hem clientleri çalıştırabilirsiniz. Aynı LAN’da bulunan server ve client’ler de aralarında gayet kolay bağlantı sağlayabilir.

Hatta aynı LAN’daki cihazlarda uygulamanız düzgün çalısırsa bir sunucu kiraladığınızda değişen tek şey server’in ip adresi olabilir.

eminmisiniz ? :slight_smile:

@aib’in de dediği gibi kullanacağınız protokol önem arz ediyor ama siz socket modülünü kullanacağınızı söylemişsiniz, eğer öyleyse tek yapmanız gereken server socket’i bind ederken host olarak "" vermek.

çok soru sordum ama Socket için önerebilceginiz türkçe bir kaynak varmı yada video anlatım. :slight_smile:

Kaynak bulmak için aradığınız şeyi internete yazmanız yeter, socket modülü için bir sürü şey yazılmıştır diye tahmin ediyorum. Şuna da bi bakabilirsiniz: