Tekrar merhaba,
nodejs'in npm'i varsa php'nin composer'ı var

Belki npm kadar büyük değildir (çünkü npm içinde frontend kütüphanelerde mevcut) ama çok özel olmadıkça bulamayacanız kütüphanenin olduğunu sanmıyorum, nodejs'de php'de çağın dışında diller değiller ki bugün hala c ve c++ yoğunlukla kullanılıyor, hatta fortran bile. Eğlence kısmı tamamen size kalmış ama söylediklerim yanlış anlaşılmasın, diyelim ki; bir mobil uygulama yazıyorsunuz bunun frontend kısmını (uygulama tarafını) tabi ki reactnative ya da flutter ile yazmak daha mantıklı ancak arkaplanda kullandığınız nodejs uygulamanızın her ihtiyacına efektif şekilde cevap verebilecek mi bunu sorgulamak lazım, yani demek istediğim microservice birden farklı platformda başka diller ile yazılmış katmanlar değil (ki bunu da kapsar ancak örneğiniz üzerinden gidiyorum), mesela webservis için yazdığınız java'ya ek özellik eklemeniz gerekti.
Örnek olarak kartların kullanım sıklığına bağlı olarak sunucuyu rescale etmeniz gerekiyor, 20:00 ile 08:00 arasında hiç kart kullanılmıyor, 08:01 ile 11:00 arasında kartların dakika başı kullanım oranı 0.75, 11:01 ile 12:30 arasında yine kart kullanımı yok, 12:31 ile 16:00 arasında kartların kullanım oranı 2.75, 16:01 ile 19:59 arasında kullanım tekrar 1'e düşüyor. Hatta burada haftanın günleri de bir kriter olarak kullanılabilir.
Bu bilgiyi yalnızca istatistik tutmak için göstereceksiniz ve gerek mobil uygulamanızda gerekse kartlar üzerinde hiçbir etkisi olmayacak, dolayısıyla bilgiyi işleyip veritabanınızda tutacaksınız ve gerekli zamanlarda bu bilgiyi sunucunuzu rescale etmek için kullanacaksınız. Bunu java üzerinde yapmanız performansı ve doğal olarak sunucu masraflarınızı gereğinden yukarıda tutacaktır, ben olsam (ki ben olsam bunu kesinlikle java ile yazmazdım) gerekli olan bu algoritmayı genel amaçlı dillerden daha çok matematiksel yönüyle öne çıkmış bir dil üzerinde yazar, java kısmında da kullanım bilgisini bu yazacağım microservice'e aktaracak bir arayüz yapardım ya da d-bus kullanırdım. Böylelikle java uygulamam üzerinde yoğun değişiklik yapmamış olacağım, yani programım hala yapması gerekenden daha fazlasına sahip olmamış olacak (basitliğini koruyacak) ve işlem javada çalışacağından daha hızlı şekilde istediğim işleri yapacak. hiç kart kullanılmayan zamanlarda sunucumu minimum pakete çekeceğim, kullanım olduğu zamanlarda ise sunucumu tekrar yeteceği seviyedeki pakete çekeceğim, böylelikle gereksiz masrafın önüne geçmiş olacağım.
Özet olarak bir program içindeki bağımlı ya da bağımsız bir işlevi gerçekleştirmek için amacına uygun seçtiğim dil ile yazdığım programın, ana program üzerindeki herhangi bir parçasında çalıştırmadan veriyi bu yazdığım servise yönlendirdim. Aslında gündelik programlarda olan da bu, bir webserver'ınız var, bir de veritabanınız, ikisi aynı dil ile de yazılmış olabilir ya da farklı dillerle yazılmıştır, sizin yaptığınız sadece arada veri akışını sağlamak, iki servis de birbirinden bağımsız (veri akışını kastetmiyorum) çalışıyor. Webserver'da hata olması durumunda veritabanınız durmuyor, vs. vs. Micro-service mimarisini buna benzetebilirsiniz.
PHP'de inline kod kullanımı konusuna gelecek olursak, php include ve require fonksiyonları ile hedef gösterdiğiniz dosyayı aslında pre-processing kısmında yazılımınızın içine dahil ediyor, nodejs'de bu durum farklı ama aynı şekilde kullanmak isterseniz fs.readfile ile program içine html'inizi dahil edebilirsiniz, php'deki gibi inline kod çalıştırmanıza izin verir mi emin değilim ancak madem çağa ayak uydurmaktan bahsetiyoruz o zaman ihtiyacınız olan template parser'dir, hem güvenlik hem de karmaşayı önlemek için template dosyalarınızı bir yerde, programınızı farklı bir yerde tutarsınız, gerektiği zaman programınız içinden bu dosyayı parse edip veriyi belirtirsiniz. Mantığı basittir, template dosyası içinde belirttiğiniz bir stringi ( örneğin: {{deger}} ), program kısmında gönderdiğiniz değişkenin processed değeri ile değiştirir (örneğin: const degisken = 'Merhaba Dünya!' ), gönderirken de neyin ne ile değişeceğini belirtirsiniz ( view.render('dosyam.html', {deger: degisken}) ), yani bul ve değiştir uygular.
POST methodu hakkındaki sorunuza da şöyle bir cevap vereyim; post methodu ile gönderilen bir veriyi doğrudan javascript ile elde etmeniz mümkün değil, bunun için bir http handleriniz olması gerekli, ki php de bunu yapamaz, php'de veriyi yakalamak için webserver'a istek atılır, webserver http isteğini işleyip bunu php'ye gönderir, phpde işleminizi yapıp tekrar webserver'a isteğe gönderilecek cevabı belirtirsiniz, webserver'da kullanıcının tarayıcısına bu cevabı yansıtır.
Evet golang daha hızlı, çünkü golang derlenen bir dil.
Hayır nodejs'de de diğer diller gibi kodunuz sol üstten, sağ alta doğru işlenir, bahsettiğiniz durum tamamen asenkron çalışan callback'lerden ibaret, 'asynchronous programming in nodejs' şeklinde arama yaparak detaylı bilgi edinebilirsiniz.
Pratik bilginiz ne derece bilmiyorum ancak
kesinlikle teorik bilgiye aç durumdasınız, bitirme projenizden anladığım bilgisayar mühendisliği yeni mezunusunuz. Aslında bu bilgileri size okulda vermiş olmaları gerekiyor, eğer ingilizceniz varsa (ki bu mesleği yapacaksanız olmak zorunda) sorularınızın terabyte'larca cevabı internette mevcut, 'how http works' yazsanız ve ilk sıradaki sayfalara tıklasanız bile çok detaylı şekilde bilgilenebilirsiniz. Benim size tavsiyem gerçekten bu işi yapmak ve kariyerinizde iyi yerlere gelmek istiyorsanız her şeyden önce teorik bilgi açlığınızı gidermeniz, diğer türlü bir şeyleri ezberlemiş, forumlardan iş alan, bazen yapabilen bazen yapamayan, belki Türkiye şartlarında iyi sayılabilecek asgari ücretin üstünde geliri olan ancak sektörde kimsenin tanımadığı, hiçbir büyük başarıma imza atamamış biri olarak hayatınızı bitirirsiniz. Bu yazdıklarımı lütfen yanlış anlamayın, sizi tanımıyorum, hiçbirini aşağılamak, yargılamak ya da çok bilmişlik taslamak için yazmadım ama hayatın gerçekleri bunlar, birinin çıkıp bunları söylemesi gerekiyor ki bu forum yazılımcı olmak istiyorum konularının altına 'kesinlikle okula gitmeyin', 'okul vakit kaybı' vs yazan insanlarla dolu ancak teorik bilgiyi okul dışında edinmeniz gerçekten zor, her şeyi kendiniz öğrenmek ve anlamak zorundasınız, okuldaki gibi yardım olacağınız kimse olmayacak.
Biraz uzunca oldu ama umarım size ve kendini geliştirmek isteyen arkadaşlara faydalı olur.