เท่าที่ผมอ่าน blognone เวลามีบทความเกี่ยวกับ .net จะมีแต่คนบอกว่ามันช้ากว่า php รับ load ได้น้อย ต้องใช้ hardware เทพถึงจะรับ load ได้เอยะ
ผมใช้ asp.net mvc ทำ website www.unigang.com เป็น web การศึกษา ปกติจะมีผู้เข้าชมประมาณ 45k - 50k uip , pv 140k - 170k server ก็ไม่ได้หรูหราอะไร intel quad core ram 8 gb ถ้าพูดถึง load เยอะๆ วันประกาศผลเข้ามหาวิทยาลัย 7 พ.ค. 2012 มีผู้เข้าชม 122k uip , pv 580 k และในวันนั้นผมทำระบบค้นหาข้อมูลผู้ได้รับการคัดเลือกเข้ามหาวิทยาลัย ไม่ใช่แค่เข้ามาอ่านเฉยๆ เท่าที่ monitor ดู server ยังรับ load ได้อีกเยอะครับ และถ้าเทียบ raw performance พวก if else loop แล้ว code ที่ compile แล้วย่อมเร็วกว่า code ที่ยังไม่ได้ compile แต่เรื่องความเร็วในการใช้งานจริงมันคงมีปัจจัยอีกเยอะแยะเข้ามาเกี่ยวข้อง สุดท้ายผมว่าอยู่ที่คนเขียนว่าถนัดอะไรครับ

Hiring! บริษัทที่น่าสนใจ

Carmen Software company cover
Carmen Software
Hotel Financial Solutions
Next Innovation (Thailand) Co., Ltd. company cover
Next Innovation (Thailand) Co., Ltd.
We are web design with consulting & engineering services driven the future stronger and flexibility.
KKP Dime company cover
KKP Dime
KKP Dime บริษัทในเครือเกียรตินาคินภัทร
Kiatnakin Phatra Financial Group company cover
Kiatnakin Phatra Financial Group
Financial Service
Fastwork Technologies company cover
Fastwork Technologies
Fastwork.co เว็บไซต์ที่รวบรวม ฟรีแลนซ์ มืออาชีพจากหลากหลายสายงานไว้ในที่เดียวกัน
Thoughtworks Thailand company cover
Thoughtworks Thailand
Thoughtworks เป็นบริษัทที่ปรึกษาด้านเทคโนโยลีระดับโลกที่คว้า Great Place to Work 3 ปีซ้อน
Iron Software company cover
Iron Software
Iron Software is an American company providing a suite of .NET libraries by engineer for engineers.
CLEVERSE company cover
CLEVERSE
Cleverse is a Venture Builder. Our team builds several tech companies.
Nipa Cloud company cover
Nipa Cloud
#1 OpenStack cloud provider in Thailand with our own data center and software platform.
Bangmod Enterprise company cover
Bangmod Enterprise
The leader in Cloud Server and Hosting in Thailand.
CIMB THAI Bank company cover
CIMB THAI Bank
MOVING FORWARD WITH YOU - CIMB is the leading ASEAN Bank
Bangkok Bank company cover
Bangkok Bank
Bangkok Bank is one of Southeast Asia's largest regional banks, a market leader in business banking
MuvMi (Urban Mobility Tech Co.,Ltd.) company cover
MuvMi (Urban Mobility Tech Co.,Ltd.)
Shape the future of urban mobility towards affordable, clean, and safe solutions
T.N. Digital Solution Co., Ltd. company cover
T.N. Digital Solution Co., Ltd.
TNDS has been involving in every first move of banking’s major digital transformation.
KBTG - KASIKORN Business-Technology Group company cover
KBTG - KASIKORN Business-Technology Group
KBTG - "The Technology Company for Digital Business Innovation"
Siam Commercial Bank Public Company Limited company cover
Siam Commercial Bank Public Company Limited
"Let's start a brighter career future together"
Icon Framework co.,Ltd. company cover
Icon Framework co.,Ltd.
Global Standard Platform for Real Estate แพลตฟอร์มสำหรับธุรกิจอสังหาริมทรัพย์ครบวงจร มาตรฐานระดับโลก
REFINITIV company cover
REFINITIV
The Financial and Risk business of Thomson Reuters is now Refinitiv
H LAB company cover
H LAB
Re-engineering healthcare systems through intelligent platforms and system design.
The Gang Technology Co., Ltd. company cover
The Gang Technology Co., Ltd.
We're a Digital Agency that helps our customers transform their business into digital with ease.
LTMH company cover
LTMH
LTMH มุ่งเน้นการพัฒนาผลิตภัณฑ์ที่สามารถช่วยพันธมิตรของเราให้บรรลุเป้าหมาย
Seven Peaks company cover
Seven Peaks
We Drive Digital Transformation
Wisesight (Thailand) Co., Ltd. company cover
Wisesight (Thailand) Co., Ltd.
The Best Choice For Handling Social Media · High Expertise in Social Data · Most Advanced and Secure
MOLOG Tech company cover
MOLOG Tech
We are Modern Logistic Platform, Specialize in WMS, OMS and TMS.
Data Wow Co.,Ltd company cover
Data Wow Co.,Ltd
We enable our clients to realize increased productivity by solving their most complex issues by Data
LINE Company Thailand company cover
LINE Company Thailand
LINE, the world's hottest mobile messaging platform, offers free text and voice messaging + Call
LINE MAN Wongnai company cover
LINE MAN Wongnai
Join our journey to becoming No.1 food platform in Thailand

ถ้าวัดกันตรงๆ ไม่เกี่ยวกับว่าเขียนดีหรือเขียนห่วย PHP น่าจะเร็วกว่านะครับ ถึงจะมองเผินๆได้ว่าเป็น intepreter แต่ว่าพวก intepreter เดี๋ยวนี้มันก็มีเทคโนโลยีการ compile และ optimize อยู่ภายในเหมือนกันครับ ส่วน .net ถึง compile แต่ก็ compile เป็น Intermediate Code ไม่ใช่ Native Code ซึ่งต้องเอาไปรันบน Virtual Machine (หรือ Runtime) อยู่ดีครับ

แต่ทั้งนี้ขึ้นอยู่กับคนเขียนว่า optimize ดีแค่ไหนด้วยล่ะครับ เขียน C แบบห่วยๆก็แพ้เขียน Java หรือ .NET แบบดีๆได้ครับ

อันนี้คุณ sathdr น่าจะเข้าใจผิดนะครับ PHP ใน version หลังๆมีการ cache opcode ที่ได้แปลไปแล้วเพื่อนำกลับมาใช้ใหม่ ซึ่งใน PHP 6 จะ APC เข้าไปใน core เลยครับ แต่เมื่อเทียบกับ compile ยังซะการทำ intepreter ก็ยังช้ากว่าอยู่มากครับ ถึงจะ optimize ขนาดไหนก็ไม่มีทางสู้การ compile ได้แน่นอนครับ และจากข้อมูลที่คุณ luckyman ให้มาก็จะเห็นนะครับว่าช้ากว่ากันอยู่เยอะมาก แต่ถ้าช้ากว่าจริงๆผมขออภัยด้วยครับ

sathdr Fri, 14/12/2012 - 00:49

In reply to by K-O-N-G

ครับ ถ้าเทียบกันแบบบรรทัดต่อบรรทัด PHP ก็ช้ากว่าจริงๆล่ะครับ ยิ่งเป็นงานประมวลผล หรือใช้ native data type เยอะๆก็คงสู้ไม่ไหวล่ะครับ แต่ถ้าเป็นงานที่ไม่ได้มาคอขวดที่ CPU ผมว่ามันขึ้นกับความฉลาดของคนเขียนเหมือนที่คุน inwwin ด้านล่างว่าไว้ล่ะครับ

ใน .net จะมี Ngen pre-compiles ทำ machine native code ตั้งแต่ตอน compile source เลยครับ ถ้าสังเกตุดูใน VS มันจะมีให้เราตั้ง platform target ครับ แต่ใน .net 4.5 จะมี Multicore JIT เพิ่มขึ้นมา โดยตัว Multicore JIT ทำงานก็จะ save ข้อมูลลงใน disk ทำให้ไม่ต้องมาทำซ้ำอีกครั้ง

ผมเชื่อว่าถ้าเขียนแบบ MVC แบบคนเขียนเป็น จัดสรรทรัพยากรเป็น ไม่บ้าเขียนโค้ดผิดงาน รู้จักการ Optimize ไม่เรียก DataTable มาทั้งยวง เพื่อใช้ DataRow แค่อันเดียว ผมว่าเร็วมากแน่นอนครับ

windows 2003 ช้ากว่า linux, iis 6 ช้ากว่า apache, .net 1.x ช้ากว่า
และ optimize อะไรต่างๆได้น้อยกว่า ไม่ว่าจะเรื่อง os, server, coding
แต่ถ้าเป็น iis 7 + .net 4 ขึ้นไป asp.net ก็ทำได้ดีขึ้นมากแล้วครับ

โปรแกรมเมอร์เขียนโปรแกรมไม่ดีคิดว่าเป็นทุกภาษาครับ เช่นทุกอย่างยัดลง Session นี้ โหดมากครับ

สิ่งนึงที่ทำให้เกิดเหตุการณ์แบบนั้นเพราะพวก ui control ต่างๆที่นำมาช่วยอำนวยความสะดวกด้วย รวมถึงความมักง่ายด้วยแหละครับ
ยกตัวอย่างเคสง่ายๆที่เห็นได้ทั่วไปก็คือ control เกี่ยวกับ gridview ของค่ายนึง ซึ่งเวลา user กดเปลี่ยนหน้าไปดูข้อมูลหน้าอื่น มันจะไป fire event needdatasource โปรแกรมเมอร์ก็แค่จับ datasource โยนลงไปให้มัน

พอมันทำได้ง่ายๆ ความมักง่ายก็บังเกิด หลายคนก็ใช้วิธี query ออกมาเป็นก้อนใหญ่ จับโยนลง session และรอคอยวันที่ user จะมา trigger event สำหรับเปลี่ยนหน้า (- -!) (แรมไม่ได้มีเป็น tera นะครับเพ่)

และในเวบฟอร์มหน้าอื่นๆก็จะมีโปรแกรมเมอร์คนอื่น(หรือคนเดียวกัน) ทำแบบนี้ไปเรื่อยๆ

+1 โค้ดนรกครับ

ของผมรับโหลดเป็นแสนๆได้สบายๆครับ (ขอสวงวน เดี๋ยวโดนจวก) ก็เขียน Classic นี่ล่ะ ถ้างานหนักกว่านั้นก็จับยัดลง MongoDB ครับ ไวมว๊าก โหลดมาจากไหนก็พร้อมรับมือ

บางงานพวก Authentication นี่ก็ล่มได้นะเธอ โดยเฉพาะ session จาก user เยอะเกินไปก็ล่มได้เหมือนกัน (แต่ php นี่ทนทายาทมั่กๆ)

จริงๆ แล้วอยากแปะ meme I dont know what im doing จะเหมาะสมมากครับ

ผมเป็นพวกชอบเทียบโค้ดเป็นสำเนียงการพูดด้วย ซึ่งโค้ดแบบที่คุณ soginal ว่าไว้นี่เปรียบได้กับพวกงุงิครุคริครับ

เห็นแค่โค้ดยังอยากบีบคอ เหมือนพวกที่ชอบใช้ภาษาวิบัติยังไงยังงั้น

อยู่ที่คนเขียนนั้นแหละครับ ไม่ว่าจะภาษาอะไร เครื่องสเปคไหน ถ้าคนเขียนไม่ดีมันก็ไม่ดีไปหมด

ส่วนที่หลายคนพูดกัน ผมว่าเป็นเพราะคนเห็นเว็บฝั่ง asp.net มัน error เยอะกว่าฝั่ง php ซะอีก ทั้งที่คนเขียน php น่ะเยอะกว่า

ผมรู้สึกว่าทำไมมันมี Exception เด้งออกมาบ่อยจัง ก็เลยรู้สึกไปเองว่าล่มบ่อยกว่า ทั้ง ๆ ที่ไม่ได้เขียนเวปเองล่ะครับ

ในขณะที่เวปที่เป็น php มันล่มน้อยกว่าน่ะ แต่ก็อีกน่ะล่ะ พอมันเป็นเวปคนละแบบกันมันก็เลยเอามาเทียบตรง ๆ ไม่ได้หรอก

ปรกติคับ ภาษามันยากกว่า Error ก็ต้องมีมากกว่าเป็นธรรมดา เหมือนกับให้คนที่เขียนภาษา Native ไม่เป็นไปเขียน C++ ก็จะเกิดบั๊กเยอะแยะ แถมเป็นบั๊กที่ไม่มีอะไรรายงานให้เห็นด้วยว่าบั๊กตรงไหน

.NET มันต้องใช้คนที่มีความรอบคอบในการเขียนเยอะกว่าปรกติ (แต่ไม่เยอะเท่า C++) ซึ่งคนเขียน .NET ส่วนมากฝีมือไม่ดีกันทั้งนั้น เพราะใช้เป็นกันแค่ระบบอัตโนมัติและของสำเร็จรูปที่มีให้

เห็นด้วยเป็นอย่างยิ่งครับ ผมเคยเจอ programer รุ่นเก่าทำงานมาตั้งแต่สมัย vb6 พอย้ายมาเขียน .net ก็เน้นใช้แต่ control แล้ว query data มายัดไว้ใน session พอมีการเรียกใช้งานก็โยน data ให้ control
แต่การใช้การ control ก็มีข้อดีในตัวมันเองทำให้งานเราเสร็จเร็วและออกมาสวยงาม ซึ่งมันเหมาะกับ webapp ในองค์กรซะมากกว่า

ตอนแรกผมก็เป็นหนึ่งในคนที่มอง .NET ไม่ดีเหมือนกัน เพราะภาพลักษณ์ที่ผมรู้จักมาจากคนอื่นๆแบบนี้ละ ในตอนแรกผมก็เป็นเหมือน Geek คนอื่นๆเลย เช่น ถ้าจะทำ Server ก็ต้อง Unix หรือ Linux ถ้าจะทำเว็บก็ต้อง PHP แต่ พอผมได้ลองมาใช้ Windows Server 2008 R2 แบบจริงๆจังๆ พบว่ามันเป็นอะไรที่สุดยอดมาก สมราคาที่ขาย ทั้งความง่าย, Architecture, Performance, Technology ฯลฯ ซึ่งก่อนหน้านั้นผมใช้ CentOS ทำเซิร์ฟเวอร์ส่วนตัวมาก่อน ปัจจุบันสำหรับผม ถ้าจะทำ Server แล้วไม่มีความจำเป็นที่ต้องใช้ Linux Windows Server คือทางเลือกที่ดีที่สุด

.NET นี่ก็เหมือนกัน ตอนแรกผม Anti มันมาก เวลาเขียนเว็บก็จะเลือกแต่ mod_perl กับ PHP แต่พอลองมาใช้ .NET จริงๆจังๆ ถึงได้รู้ว่ามันคือเทคโนโลยีสำหรับทำเว็บที่ดีที่สุด ทั้งเรื่อง Performance และความเป็นภาษา Static และ OO แบบ 100%

สรุปคือ ปัจจุบันความคิดที่ว่า เทคโนโลยีฝั่ง Server ของ Microsoft ห่วยได้หายไปจากความคิดผมจนหมดสิ้น แถมมันกลายเป็นเทคโนโลยีที่ดีที่สุดด้วย

ปกติเวลาผมต้องเขียน php ที่ไรจะหงุดหงิดมาก ไม่ได่ anti อะไรตัวไหนทำเงินได้ผมทำทั้งนั้นครับ
แต่ Visual Studio มันเทพจริง ไม่มี ide ตัวไหนในโลกเทียนได้แล้วครับ เวลา code .net มีความสุขมากและตัวภาษาเองก็มีของให้เล่นเยอะมาก linq , generic , dynamic type , ....
พอต้องมาเขียน php เลยเกิดอาการเซง ไม่ทราบมี ide สำหรับ php แนะนำมั้ยครับ

มีบทความแนะนำ 2 บทความนะครับ

  1. http://www.holisticsystems.co.uk/blog/?p=752
    บทความแรกทดสอบอย่างง่ายๆ .NET เร็วกว่า 55%
    แต่เขาก็ย้ำว่า การทดแบบ แบบนี้ไม่ได้สะท้อนการใช้งานเว็บที่แท้จริง
    .NET ใช้วิธี Compile มันก็ควรจะเร็วกว่า (แต่ก็ไม่ใช่อย่างงั้นซะทั้งหมด)

ปล. ลองอ่านเพิ่มดูนะครับ

  1. http://naspinski.net/post/AspNet-vs-php--speed-comparison.aspx
    เขาใช้ Zoom search benchmarking มาทดสอบ
    ในการใช้งานจริง เป็นอย่างไร ลองชมดูครับ

บทความอาจจะเก่า หรือ ไม่ใหม่เพียงพอ
แต่ผมมองว่า มันบอกอะไรหลายๆ อย่างมากกว่า ที่จะสรุปไปว่า "compiled > interpreted"

ส่วนผมเลือก .. PHP ครับ ไม่ใช่เรื่อง Performance
เพราะเว็บที่ผมทำ คงไม่ได้แตกต่างอะไร ระหว่าง PHP กับ ASP.NET

ผมเลือก PHP เพราะความเป็น Open-Source, Documentation, Community

อันแรกเร็วกว่า 55 เท่าตะหากคับ ไม่ใช่ 55% แถม ".NET is not executed as native object code" บอกผิดอีกตะหาก เพราะในความเป็นจริงแล้ว เวลารันมันรันเป็น Native code

ผมว่าถ้าอยากจะทำเว็บใหญ่ๆ แต่ OS เป็น Unix หนีจาก PHP แล้วไปใช้ Java แทนจะดีกว่า

PHP ลงทุนเรื่อง Infrastructure ถูกกว่าครับ ถ้าใช้ .NET แล้วจะมีค่าใช้จ่ายตามมาอีกเยอะ

ลองนึกถึงเวลาที่

  • เวลาที่เซิร์ฟเวอร์มันเพิ่มจำนวนเรื่อยๆ

  • เวลาที่นักพัฒนาเพิ่มจำนวนเรื่อยๆ

  • ลองนึกถึงค่าไลเซนส์ที่ตามมาเรื่อยๆ ทั้งตัว Visual Studio ทั้ง OS ทั้ง SQL Server (ถ้าใช้)

แค่นึกถึงผมก็เบลอแล้วครับ

+1 ครับ

มันมีอะไร ที่มีความสำคัญ และ "มีค่า" มากกว่า "ความเร็ว"

ผมเองคนนึงก็เคยอยู่ในจุดนั้น จุดที่อยากจะให้เร็วที่สุด ดีที่สุด..

จนวันนึงเราก็ต้องยอมรับว่า มันมีหลายสิ่งหลายอย่าง มีค่ามากกว่านั้น.. :)

ผมว่าภาษาไม่ใช่ประเด็นครับ อยู่ที่ความถนัดของตัวเราเอง ต่อให้ใช้ java แต่เขียน code ห่วยๆ มันก็ช้ากว่า php รับ load ได้น้อยกว่า โดยปกติแล้วพวก load หนักๆจะตายกันที่ database ครับ เรื่องการทำ index กับ cache จึงสำคัญมาก

เห็นด้วยครับ
Database ก็เป็นส่วนสำคัญส่วนหนึ่งที่หลายคนละเลย

Indexing, Caching, Store Procedure, Connection Pooling,
Parallel Query, Database Cluster, Analytic Database,
Database tuning, etc.

.. 55 times .. 55 เท่า.. .
เขียนผิดเองครับ

ผมจะบอกอะไรผิดไปก็โทษทีนะครับ รีบๆ ดูผ่านๆ ผมไม่ค่อยได้สนใจอะไร

เห็นมีคนบางคนมองหัวชนฝา มุ่งเป้าแต่เรื่อง Performance
ใจผมก็แค่อยากหยิบมาให้ดู แค่นั้น

ส่วนตัวไม่ได้สน พวก Performance อะไรเลย
โลกแห่งความจริง มันมีอะไรหลายๆอย่างที่มันสำคัญกว่า Performance เยอะเยะ ^^

มองแต่ Functionality โดยมองข้าม Capabilities มันก็คงไม่ไม่ได้

เขียนอะไรไป ไม่ถูกใจใคร ก็ขออภัยด้วยละกันนะครับ :)

ความคิดเห็นส่วนนะครับ..

มองในมุมมองผู้รับเหมา ผู้รับงานมาบ้างละกัน

  • ช่องทางการตลาด ความต้องการของลูกค้า -- ลูกค้าไม่อยากได้ ผมจะเอาแบบนี้ ผมไม่เอาแบบนั้น ?
  • ต้นทุน ค่าใช้จ่าย รายได้ รายรับ - เงิน --(แบกรับค่าใช้จ่ายไม่ไหว ไม่มีคนซื้อ เร็วแล้วไง ?
  • ความถนัด และความสามารถของคนในทีม เวลาในการทำงาน -- ในทีมไม่ถนัด ไม่มีเวลาศึกษา กว่าจะทำเสร็จ ขายแข่งกับเขาไม่ทันแล้ว ?
ส่วนตัวนะครับ

ผมเคยพยายามทำของที่ดีที่สุด.. แต่กลับขายไม่ได้.. และผมเองก็ต้องยอมรับว่า ของที่ขายได้ กับของที่ดีที่สุด.. หลายๆครั้ง มันไม่ใช่สิ่งเดียวกัน

ผมเลยต้องเลิกเป็นแค่โปรแกรมเมอร์ที่คิดจะทำแต่ทำให้มันดีที่สุด ต้องมองอะไรมากกว่านั้น มองมากกว่าเครื่องคอมที่อยู่ตรงหน้า

..และต้องยอมรับว่า ลูกค้าจ่ายในสิ่งที่เขาต้องการ ไม่ใช่จ่ายในสิ่งที่ดีที่สุดในมุมมอง "ของเรา"...

มันต้องถูกใจ ถูกเงิน ถูกเวลา ถูกที่ ถูกคน..ฯลฯ..

เห็นด้วยตรงนี้ครับ "แบกรับค่าใช้จ่ายไม่ไหว ไม่มีคนซื้อ เร็วแล้วไง ?"

ผมว่าผงซักฟอกของแอมเวย์ก็ดีนะ ... ยาสีฟันเดนทิสเต้ก็ดี ... แต่จนง่ะ

ใช้แฟ้บ ใช้ดอกบัวคู่ไปละกัน orz

เร็วแล้วสิ่งที่ได้มาคือการลงทุนใน server ครับ ลองคิดในแง่การจะ scale ระบบเพิ่มขึ้นสิครับ ถ้ามองแค่ site เล็กนั่นก็ไม่ได้มีประเด็นอะไร

มันจะจุกเรื่องค่า license น่ะครับ เท่าที่ทราบ ราคา windows + sql นี่ก็ปาเข้าไปหลายหมื่นแล้ว เวลาซื้อ server ivy bridge 4c4t นี่ 19k ก็ซื้อได้แล้วนะครับ ถ้าขยับไป 32k จะได้พวก 4c8t เลย แรงเข้าไปอีก

หลายคน มักจะเข้าใจว่า server เทพๆต้องราคาหลายแสน บางเครื่องเหยียบล้าน แต่ในความเป็นจริงการใช้ server เครื่องละไม่กี่หมื่นแล้วสเกลออกด้านข้าง มันจะได้ประสิทธิภาพโดยรวมเยอะกว่ามากในราคาที่พอๆกัน แต่ส่วนใหญ่ที่ทำแบบนั้นไม่ได้เพราะจะไปตันที่แอพที่ไม่สามารถ scale ได้ครับ

ตัวนี้กลับเป็นข้อดีของ server ที่ต้อง connect ฐานข้อมูลใหม่ทุกครั้ง เพราะจะอ้างอิงข้อมูลกันจากฐานข้อมูล ทำให้ฝั่งแอพเราสามารถสเกลเครื่องออกไปเท่าไหร่ก็ได้ ส่วนฝั่ง database เราก็ใช้ replication ช่วย หรือถ้าข้อมูลซับซ้อนก็เขียนระบบ replication ง่ายๆขึ้นมาใช้เอง

แล้วก็ยังมีพวก memcache/redis เอามาใช้เป็น buffer สำหรับข้อมูลที่ไม่สำคัญมาก (เช่น พวก session) ก็จะเร่งความเร็วและสเกลออกด้านข้างได้มากขึ้นไปอีกครับ

ป.ล. จริงๆที่ว่ามา .net ก็น่าจะทำได้หมด แต่เจอค่า license ที่แพงกว่าเครื่อง server เข้าไป ถ้าไม่ได้เป็นระบบที่ทำเงินได้ดีมากๆ ยังไงก็ไม่คุ้มอะครับ

windows web server 13k ครับ php ทำ connection pool ได้อยู่แล้วนะครับ ปกติ site ใหญ่ๆก็ใช้กันอยู่แล้วนะครับ และปกติการใช้ .net ก็ไม่ได้หมายความว่าจะใช้ linux รวมด้วยไม่ได้ ในส่วน database ก็เช่นกันครับที่ผมใช้อยู่ก็ mssql express นะครับที่สำคัญคือการทำ cache ครับ อย่างของผมลดการquery จนเหลือ 3-15 query/sec แค่นี้ express ก็เอาอยู่สบายๆ เท่าที่มองดูกำลังถ้ายอดผู้ใช้เยอะกว่านี้มากก็จะย้ายไป postgresql หรือจะลงไปเล่น mongodb ในบางส่วน และการที่ performace ต่างกัน สมมุติว่าต่างกัน 5 เท่า ถ้าใช้ php server ต้องแรงกว่า 5 เท่า ซึ่งในความเป็นจริงอาจจะน้อยกว่ารึมากกว่าก็ได้

ผมพูดไว้ด้านบนแล้วครับ เรื่องต้นทุนทางซอฟแวร์ทั้งหลาย

สมมติว่าใช้ VS ตัว Enterprise 5 seat ก็กินไปหลายแสนแล้วครับ

ลองนึกถึงองค์กรใหญ่อย่างเฟสบุคดู แล้วลองนึกถึงค่าไลเซนส์อื่นๆ อีก

ยิ่งสเกลใหญ่ค่าใช้จ่ายยิ่งบานครับ

แต่นักพัฒนาในไทยส่วนมากไม่ได้มองถึงต้นทุนตรงนี้ เพราะว่า ASP.NET ในไทยมันฟรีเหมือน PHP

มันหลายแสนจริงหรอครับ ไม่ทราบว่าเท่าไหรหรอครับ เท่าที่ผมรู้ถูกว่านั้นมากๆๆๆครับ แล้วทำไมต้องใช้ตัว Enterprise ละครับแค่ตัว Pro หรือ standard ก็พอแล้ว ถ้าไม่อยากเสียเงินก็ express เลยครับ

soginal Fri, 21/12/2012 - 09:18

In reply to by czynet

Performance ไม่ใช่สิ่งจำเป็นที่สุดก็จริงครับ แต่ก็สำคัญ ไม่สนใจไม่ได้หรอกครับ
ผมก็บอกกับ programmer คนอื่นอยู่เสมอว่า ให้สนใจ Performance เฉพาะในจุดที่มันจำเป็นต้องทำ
แต่ถ้าถึงขนาดไม่สนใจเลยนี่ ลูกค้ารับไม่ได้ครับ

และประเด็นของหัวข้อนี้คุยกันเรื่อง Performance ไม่ใช่หรือครับ แล้วจะไม่ให้มุ่งเป้าคุยกันที่ Performance เหรอครับ?

ใช่ครับ ..
กลางๆ กระทู้ มันก็คงจบไปแล้วละครับว่า ASP.NET เร็วกว่า PHP
(ถ้าผมเข้าใจไม่ผิดจากข้อมูลต่างๆ นะ)

หลังจากนั้น มันเป็นส่วนขยายประเด็นที่แตกออกมาไปแล้วละครับ :)

มาช่วยดราม่า ครับ ฮ่า ๆ

ถ้าพูดถึงความเร็วเทียบกันแล้ว ASP.NET เร็วกว่า PHP แน่นอนครับ แต่ว่า แต่ละภาษามีข้อดีข้อเสียแตกต้างกันไป

ขอพูดถึงข้อเสียของ PHP ก่อนอย่างแรก PHP เป็น Interperter อย่างด้านบนบอกไว้เวลาทำงานจะต้องทำการแปลงโคดทุกครั้งและทุกครั้งที่ทำการเชื่อมต่อฐานข้อมูลก็ต้องทำการคอนเน็ทชั่นใหม่ทุกครั้ง ดังนั้น PHP เพียว ๆ (เพียว ๆ) จึ่งเหมาะกับการทำงานในระดับ เล็ก Transection ไม่เกิน 20 ในเวลาเดียวกันเหมาะกับองค์กรขนาดเล็ก-ระดับกลางที่พึ่งเริ่มก่อตั้ง จำเป็นที่จะต้องพัฒนาส่วน Javascript Graphic User Interface ด้วยตัวเอง สรุปคือ "PHP แบบเพียว ๆ จะทำหน้าที่เป็นตัวเชื่อมต่อฐานข้อมูลตัวประมวลผล และตัวแสดงผลในตัวเดียวกัน"

ต่อมาข้อเสียของ ASP.NET อย่างแรก Graphic User Interface จะมีสำเร็จมาให้แล้วแต่ที่สังเกตดูจะทำให้เกิดความล่าช้ากับคอมพิวเตอร์ของ User ที่เก่ามาก ๆ ซึ่งเป็นส่วนน้อยและมีค่าใช้จ่ายในการติดตั้งแพงกว่า PHP ส่วนของการพัฒนานั้นถ้าใครเคยใช้ VB.NET ก็สบายไปครึ่งหนึ่ง ในส่วนของการเชื่อมต่อฐานข้อมูลและการประมวลผล จะใช้ VB.NET ในการทำงานและส่งไปให้ ASP เป็นส่วนการแสดงผลส่งให้กับ User อีกทีหนึ่ง

แต่ทาง PHP แบบ Expert จะมีทางออกคือการนำ Java Servlet เข้ามาช่วยในการทำงานโดยจะนำ PHP มาช่วยในการประมวลผลในการแสดงข้อมูล HTML ให้ User แต่ในการเชื่อมต่อฐานข้อมูลกับการประมวลผลจะให้ส่วนของ Java Servlet ทำงานแทน ซึ่ง Java Servlet จะทำหน้าที่คล้าย ๆ กับ VB.NET ข้อดีข้อเสียของส่วนนี้คือต้องอาศัยความชำนาญในการพัฒนามากทั้งทางด้านหน้าและด้านหลังแต่ก็จะได้มาซึ่งซอสโคดที่สะอาดมากกว่า ASP.NET แต่ความยากในการพัฒนาก็มาเยอะกว่ามากเช่นกัน

ดังนั้นเรื่องความเร็วนั้นต้องวัดจากรูปแบบการทำงานของระบบมากกว่าวัดกันที่ภาษานะครับ

สุดท้ายขอทิ้งไว้เป็นความรู้ในการพัฒนาระบบที่ใหญ่ ๆ เพราะเกิดปัญหากับที่ทำงานมาก
การพัฒนาระบบที่มี Transection มาก ๆ ควรที่จะเลือก JAVA หรือ .NET ในการทำงานและแบ่งรูปแบบการทำงานเป็น
4 ส่วนเป็นอย่างต่ำ ได้แก่ 1.ส่วนของการแสดงผล 2.ส่วนของการประมวลผล 3.ส่วนของการถือครองข้อมูล 4.ส่วนของการเชื่อมต่อ แต่ละส่วนทำเป็น OOP และส่วนฟังก์ชั่นในการเชื่อมต่อหากันเวลาต้องการปรับเปลี่ยนส่วนใดจะสามารถทำได้สดวก ส่วนที่สำคัญที่สุดคือส่วนของการถือครองข้อมูลควรจะอ่านข้อมูลที่ใช้บ่อย ๆ จากฐานข้อมูลมาไว้ในเมมโมรี่ให้ได้มากที่สุดจะช่วยให้ความเร็วและประสิทธิภาพในการทำงานของระบบดีขึ้นมากครับ

ลอง asp.net mvc สิครับแก้ปัญหาที่เกิดใน asp.net ได้หมด และในแต่ละส่วนใน mvc ของ asp.net mvc มันจะสามารถทำ Inversion of Control (Ioc) ได้ทุกส่วน ส่วนถ้าจะทำ php แล้วต่อด้วย servlet ผมว่าเวลาทำงานจริงๆปัญหามันจะเกิดนะครับ การจะหาคนที่ทำได้ทั้ง php และ servlet ได้นี่ยากเลยครับ ตัว php เองก็ไม่ได้เลวร้ายขนาดรับ Transection ไม่เกิน 20 นะครับ web ใหญ่ๆหลาย web ก็ใช้ php กันเยอะ ดูอย่าง facebook เป็นตัวอย่างครับ php นะครับ แต่ใช้ HipHop แปลง code php ไปเป็น c++ และ web ส่วนใหญ่ที่จะล่มกันคือไปล่มที่ database ครับ

ต้องอ้างอิงถึง Classic .NET ครับ

บนความง่ายของ Web Forms มันมี Overhead เยอะพ่วงตามมาด้วย ลองดูง่ายๆแค่ Textbox ตัวเดียวที่ผูก Event กับ Validation ไว้เยอะๆ เวลา render หน้าเว็บออกมา View source ทีก็ปวดขมับแล้ว เพราะมันเจนฯ script ที่เทอะทะมากออกมา ยิ่งถ้าเป็นโค้ด UpdaePanel นี่แทบไม่ต้องไปแกะเลยครับลากใส่ไปยังไงก็ต้อง let it be ไปเลย

แล้วสิ่งเหล่านี้มันเป็นสิ่งที่ MS พยายาม offer ให้ developer ใช้มาตั้งแต่แรกที่ออก ASP.NET มา เพราะมัน "ง่าย" แค่ลากวางๆแล้วก็ config จาก properties

มันเลยเป็นที่มาของความมักง่ายที่ .NET developer จำนวนมากติดนิสัยมาจากความง่ายของตัว .NET เองนี่แหละ

และก็สืบเนื่องต่อมาถึงเรื่องประสิทธิภาพที่คุณสงสัยกันนั่นแหละครับ

ส่วน MVC นั้นเป็นสิ่งที่ MS เห็นแล้วว่า Classic .NET มันมีปัญหา แล้วก็พยายามทำให้เข้ารูปเข้ารอยตามที่ควรจะเป็นมากขึ้นและมีประสิทธิภาพมากขึ้นครับ จึงไม่แปลกที่ MVC ที่คุณพูดถึงมันจะรับ load ได้เยอะ และทำงานได้รวดเร็วครับ

แสดงว่ายังไม่เคยเห็นความมักง่ายของน้องๆ ที่เขียน PHP กรูจาบร้าาาาาา

อีกคนเขียน vb.net แต่ใช้ left,right,mid,format

มันไม่ได้ผิดหรอก แต่ .... แต่อะไรหว่า พูดไม่ถูก

ผมเข้าใจความรู้สึกนั้นครับ #ตบบ่า

ให้ความรู้สึกเหมือนตอนที่เจอคน import activex control บางตัวที่เขาเคยใช้ใน vb เข้ามาในโปรเจ็ค ทั้งๆที่ .net ก็มี control แบบนั้นเตรียมไว้ให้แล้ว - -!

คหสต. ผมว่า ASP.Net มันก็ไม่ได้เร็วกว่า PHP ทุกกรณีล่ะครับ

กรณีที่เคยเจอ ... สมัยเรียน ตอนนั้นใช้ ASP.Net บน .NET 1.1 มั้ง พอเขียนโค๊ดเสร็จ กว่ามันจะคอมไพล์ กว่ามันจะรีจิสเตอร์ตัว dll เครื่องผมก็ แคร่ก ๆๆๆๆๆ อยู่ประมาณเกือบห้านาทีได้ ผมก็คิดในใจ "ถ้าเป็น PHP ป่านนี้มันเสร็จไปแล้ว ..." แต่พอดีมันดันเป็นวิชา .Net ไง 555

คือ platform ประเภทที่ต้องคอมไพล์ก่อนเจอแบบนี้เหมือนกันหมดล่ะครับ มันมีกระบวนการที่ต้องใช้เวลาในขั้นแรก ทั้งการคอมไพล์และติดตั้ง ในขณะที่ภาษาสคริปท์เนี่ยแค่เอาไปวางก็จบ เสร็จละ มันเป็นความสุขเล็ก ๆ ของ Dev ที่ไม่ต้องมานั่งคอมไพล์โค๊ดน่ะครับผมว่า

นอกเรื่อง : มีใครสนใจงานเขียนโค๊ด C++ กับโปรแกรมขนาดล้านกว่าบรรทัด ใช้เวลาคอมไพล์ชม.ครึ่งบ้างมั้ยครับ ส่ง resume มาได้นะ 555 พอเจองานคอมไพล์นาน ๆ แล้วจะเริ่มหลงรักภาษาสคริปท์ครับ

kengdesign Thu, 21/02/2013 - 20:51

เร็วหรือไม่เร็ว แต่รู้ว่าปัจจุบัน .net .asp ทั้งหลายใช้งานจริงๆน้อยมาก เว็บต่างๆหรือระบบต่างๆก็ใช้ PHP หมดแล้ว
มีลูกค้ามาจ้างหรือทำงานที่ไหนก็ใช้ PHP หมดหลากหลายยืดหยุ่นและรองรับทำงานได้มากกว่าหลายๆอย่าง

,net ปี 2013 และปีต่อไปจะรุ่งมั้ยครับ ใครแฟน .net ตอบหน่อยครับ
.net หางานหรือมีจ๊อบเข้ามาเยอะกว่ามั้ย? เวลานี้ PHP เท่านั้นแหละ

"รองรับทำงานได้มากกว่าหลายๆอย่าง" เช่นยังไงเหรอคับ?

ส่วนเรื่องจะรุ่งหรือไม่รุ่ง ดูตารางนี้เอาเองคับ http://www.tiobe.com/index.php/content/paperinfo/tpci/index.html ก็ไม่มีอะไรมากหรอกคับ แค่มากกว่า PHP อยู่ 1.6%