บริการเว็บคืออะไร? บริการเว็บคืออะไร บริการทางเว็บคืออะไร

บริการเว็บคือโปรแกรมที่โปรแกรมอื่นสามารถเข้าถึงได้ผ่านทางอินเทอร์เน็ต (http) ตัวอย่างเช่น สมมติว่าคุณมีฟังก์ชันที่ให้ข้อความในรูปแบบ HTML วัตถุประสงค์ของแอปพลิเคชันคือเพื่อให้เว็บเบราว์เซอร์แสดงผลและบุคคลจะสามารถอ่านข้อความนี้บนหน้าเว็บได้อย่างง่ายดาย

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

ข้อได้เปรียบหลักของบริการเว็บคือแอปพลิเคชันสามารถเขียนเป็นภาษาใดก็ได้ แต่สามารถสื่อสารและแลกเปลี่ยนข้อมูลระหว่างกันได้ผ่านบริการบนเว็บ แอพพลิเคชั่นซอฟต์แวร์ที่เขียนด้วยภาษาโปรแกรมต่าง ๆ และทำงานบนแพลตฟอร์มที่แตกต่างกันสามารถใช้บริการเว็บเพื่อสื่อสารผ่านอินเทอร์เน็ต (HTTP) การโต้ตอบนี้ (เช่น ระหว่างแอปพลิเคชัน Java และ Python หรือ Windows และ Linux) เกี่ยวข้องกับการใช้มาตรฐานเปิด (XML, SOAP, HTTP)

  • SOAP (โปรโตคอลการเข้าถึงวัตถุอย่างง่าย)
  • UDDI (คำอธิบายสากล การค้นพบ และการบูรณาการ)
  • WSDL (ภาษาคำอธิบายบริการเว็บ)

บริการเว็บมีกี่ประเภท?

โดยพื้นฐานแล้ว มีบริการเว็บสองประเภท ได้แก่ Simple Object Access Protocol (SOAP) และ Representational State Transfer (REST)

  • บริการเว็บ SOAP ยอมรับคำขอในรูปแบบ XML และสร้างเอาต์พุตในรูปแบบ XML
  • บริการเว็บ REST มีความหลากหลายมากกว่าและสามารถรับ XML และ JSON เป็นการร้องขอและสร้างเอาต์พุตในรูปแบบ XML เช่นเดียวกับ JSON หรือแม้แต่ HTML

คุณสามารถศึกษาปัญหานี้โดยละเอียดได้จากเรา

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

การแนะนำ

เราต้องเริ่มต้นด้วยสาเหตุที่แนวคิดของบริการเว็บถูกสร้างขึ้น เมื่อแนวคิดนี้ปรากฏขึ้นในโลก เทคโนโลยีก็มีอยู่แล้วที่อนุญาตให้แอปพลิเคชันโต้ตอบในระยะไกล โดยที่โปรแกรมหนึ่งสามารถเรียกวิธีการบางอย่างในอีกโปรแกรมหนึ่ง ซึ่งสามารถเปิดใช้งานบนคอมพิวเตอร์ที่ตั้งอยู่ในเมืองอื่นหรือแม้แต่ประเทศอื่นได้ ทั้งหมดนี้เรียกสั้น ๆ ว่า RPC (การเรียกขั้นตอนระยะไกล) ตัวอย่าง ได้แก่ เทคโนโลยี CORBA และสำหรับ Java - RMI (Remote Method Invoking) และทุกอย่างดูเหมือนจะดีในตัว โดยเฉพาะใน CORBA เพราะ... คุณสามารถทำงานกับมันในภาษาการเขียนโปรแกรมใดก็ได้ แต่ยังมีบางอย่างขาดหายไป ฉันเชื่อว่าข้อเสียของ CORBA ก็คือว่ามันทำงานผ่านโปรโตคอลเครือข่ายบางตัวของตัวเอง แทนที่จะเป็น HTTP แบบธรรมดา ซึ่งจะพอดีกับไฟร์วอลล์ใดๆ แนวคิดของบริการเว็บคือการสร้าง RPC ที่จะแทรกลงในแพ็กเก็ต HTTP จึงเริ่มมีการพัฒนามาตรฐาน แนวคิดพื้นฐานของมาตรฐานนี้คืออะไร:
  1. สบู่- ก่อนที่จะเรียกขั้นตอนระยะไกล คุณต้องอธิบายการโทรนี้ในไฟล์ XML ในรูปแบบ SOAP SOAP เป็นเพียงหนึ่งในมาร์กอัป XML จำนวนมากที่ใช้ในบริการเว็บ ทุกอย่างที่เราต้องการส่งที่ไหนสักแห่งผ่าน HTTP จะถูกแปลงเป็นคำอธิบาย XML SOAP ก่อน จากนั้นจึงยัดลงในแพ็กเก็ต HTTP และส่งไปยังคอมพิวเตอร์เครื่องอื่นบนเครือข่ายผ่าน TCP/IP
  2. WSDL- มีบริการเว็บเช่น โปรแกรมที่สามารถเรียกวิธีการจากระยะไกลได้ แต่มาตรฐานกำหนดให้โปรแกรมนี้ต้องมีคำอธิบายว่า "ใช่ คุณพูดถูก นี่คือบริการทางเว็บจริงๆ และคุณสามารถเรียกใช้วิธีการดังกล่าวได้จากบริการดังกล่าว" คำอธิบายนี้แสดงด้วยไฟล์ XML อื่นซึ่งมีรูปแบบที่แตกต่างกัน คือ WSDL เหล่านั้น. WSDL เป็นเพียงไฟล์ XML ที่อธิบายบริการบนเว็บและไม่มีอะไรเพิ่มเติม
ทำไมคุณถามสั้น ๆ ? คุณไม่สามารถเจาะจงมากขึ้นได้ไหม? อาจเป็นไปได้ แต่การทำเช่นนี้ คุณจะต้องหันไปหาหนังสือเช่น T. Mashnin, “Java Web Services” ใน 200 หน้าแรก มีคำอธิบายโดยละเอียดของแต่ละแท็กของมาตรฐาน SOAP และ WSDL มันคุ้มค่าที่จะทำไหม? ในความคิดของฉัน ไม่ เพราะ... ทั้งหมดนี้ถูกสร้างขึ้นโดยอัตโนมัติใน Java และคุณเพียงแค่ต้องเขียนเนื้อหาของวิธีการที่ควรจะเรียกจากระยะไกลเท่านั้น ดังนั้น API เช่น JAX-RPC จึงปรากฏใน Java หากใครไม่ทราบ เมื่อพวกเขาบอกว่า Java มี API เช่นนั้น นั่นหมายความว่ามีแพ็คเกจที่มีชุดคลาสที่ห่อหุ้มเทคโนโลยีดังกล่าวไว้ JAX-RPC พัฒนาไปตามกาลเวลาจากเวอร์ชันสู่เวอร์ชันและในที่สุดก็กลายเป็น JAX-WS เห็นได้ชัดว่า WS ย่อมาจาก WebService และคุณอาจคิดว่านี่เป็นเพียงการเปลี่ยนชื่อ RPC เป็นคำศัพท์ยอดนิยมในปัจจุบัน เรื่องนี้ไม่เป็นความจริงเพราะว่า ขณะนี้บริการทางเว็บได้ย้ายออกไปจากแนวคิดดั้งเดิม และช่วยให้คุณไม่เพียงแต่เรียกวิธีการระยะไกลเท่านั้น แต่ยังส่งข้อความเอกสารในรูปแบบ SOAP ได้อีกด้วย ฉันไม่รู้ว่าทำไมถึงจำเป็น ไม่น่าเป็นไปได้ที่คำตอบในที่นี้จะเป็น "ในกรณีที่จำเป็น" ตัวฉันเองต้องการเรียนรู้จากสหายที่มีประสบการณ์มากกว่า และสุดท้าย JAX-RS ก็ปรากฏขึ้นสำหรับสิ่งที่เรียกว่าบริการเว็บ RESTful แต่นี่คือหัวข้อของบทความแยกต่างหาก การแนะนำตัวจะจบลงเพียงเท่านี้ เพราะ... ต่อไปเราจะเรียนรู้การทำงานกับ JAX-WS

แนวทางทั่วไป

ในบริการบนเว็บจะมีไคลเอนต์และเซิร์ฟเวอร์อยู่เสมอ เซิร์ฟเวอร์คือบริการบนเว็บของเรา และบางครั้งเรียกว่าจุดสิ้นสุด (เช่นเดียวกับใน จุดสิ้นสุดที่ข้อความ SOAP จากไคลเอนต์ไปถึง) เราจำเป็นต้องทำสิ่งต่อไปนี้:
  1. อธิบายอินเทอร์เฟซของบริการบนเว็บของเรา
  2. ใช้อินเทอร์เฟซนี้
  3. เปิดตัวบริการเว็บของเรา
  4. เขียนไคลเอนต์และเรียกใช้วิธีการบริการเว็บที่ต้องการจากระยะไกล
คุณสามารถเปิดบริการเว็บได้หลายวิธี: อธิบายคลาสด้วยวิธีการหลักและเปิดบริการเว็บโดยตรงในฐานะเซิร์ฟเวอร์ หรือปรับใช้กับเซิร์ฟเวอร์เช่น Tomcat หรืออื่น ๆ ในกรณีที่สอง เราไม่ได้เปิดเซิร์ฟเวอร์ใหม่และไม่ได้เปิดพอร์ตอื่นบนคอมพิวเตอร์ แต่เพียงบอกคอนเทนเนอร์เซิร์ฟเล็ต Tomcat ว่า “เราได้เขียนคลาสบริการเว็บที่นี่ โปรดเผยแพร่เพื่อให้ทุกคนที่ติดต่อคุณสามารถ ใช้บริการเว็บของเรา" ไม่ว่าเราจะเปิดบริการเว็บด้วยวิธีใดเราก็จะมีลูกค้ารายเดียวกัน

เซิร์ฟเวอร์

มาเปิดตัว IDEA และสร้างโครงการใหม่กันเถอะ สร้างโครงการใหม่- มาระบุชื่อกันเถอะ สวัสดีเว็บเซอร์วิสและกดปุ่ม ต่อไปจากนั้นกดปุ่ม เสร็จ- ในโฟลเดอร์ srcมาสร้างแพ็คเกจกันดีกว่า ru.javarush.ws- ในแพ็คเกจนี้เราจะสร้างอินเทอร์เฟซ HelloWebService: package ru ชวารัช เป็น; // สิ่งเหล่านี้คือคำอธิบายประกอบ เช่น วิธีทำเครื่องหมายชั้นเรียนและวิธีการของเรา // เกี่ยวข้องกับเทคโนโลยีบริการเว็บนำเข้า javax. เจดับบลิว. Webวิธีการ; นำเข้า javax. เจดับบลิว. บริการเว็บ;นำเข้า javax. เจดับบลิว. สบู่. การผูกสบู่; // เราบอกว่าอินเทอร์เฟซของเราจะทำงานเป็นบริการบนเว็บ@บริการเว็บ // เราบอกว่าเว็บเซอร์วิสจะใช้ในการเรียกเมธอด@SOAPBinding (style = SOAPBinding.Style.RPC) อินเทอร์เฟซสาธารณะ HelloWebService ( // เราบอกว่าวิธีนี้สามารถเรียกจากระยะไกลได้@WebMethod สตริงสาธารณะ getHelloString (ชื่อสตริง); ) ในโค้ดนี้ คลาส WebService และ WebMethod เรียกว่าคำอธิบายประกอบและไม่ทำอะไรเลยนอกจากทำเครื่องหมายอินเทอร์เฟซของเราและวิธีการของมันเป็นบริการเว็บ เช่นเดียวกับคลาส SOAPBinding ข้อแตกต่างเพียงอย่างเดียวคือ SOAPBinding เป็นคำอธิบายประกอบพร้อมพารามิเตอร์ ในกรณีนี้ พารามิเตอร์ style จะถูกใช้พร้อมกับค่าที่ระบุว่าบริการเว็บจะไม่ทำงานผ่านข้อความเอกสาร แต่เป็น RPC แบบคลาสสิก เช่น เพื่อเรียกวิธีการ ลองใช้ตรรกะอินเทอร์เฟซของเราและสร้างคลาส HelloWebServiceImpl ในแพ็คเกจของเรา โดยวิธีการที่ฉันทราบว่าการสิ้นสุดคลาสด้วย Impl เป็นแบบแผนใน Java ตามที่กำหนดการใช้งานอินเทอร์เฟซ (Impl - จากคำว่า การใช้งาน เช่น การใช้งาน) นี่ไม่ใช่ข้อกำหนดและคุณมีอิสระที่จะตั้งชื่อคลาสตามที่คุณต้องการ แต่ต้องมีมารยาทที่ดี: package ru ชวารัช เป็น; // คำอธิบายประกอบแบบเดียวกับเมื่ออธิบายอินเทอร์เฟซนำเข้า javax. เจดับบลิว. บริการเว็บ; // แต่ที่นี่ใช้กับพารามิเตอร์ endpointInterface// ระบุชื่อเต็มของคลาสอินเทอร์เฟซของบริการเว็บของเรา @บริการเว็บ(endpointInterface="ru.javarush.ws.HelloWebService" src) คลาสสาธารณะ HelloWebServiceImpl ใช้ HelloWebService ( @Override public String getHelloString (ชื่อสตริง) ( //ก็แค่กลับมาทักทายกลับ "สวัสดี" + ชื่อ + "!" - ) ) มาเปิดตัวบริการเว็บของเราในฐานะเซิร์ฟเวอร์อิสระเช่น โดยไม่ต้องมีส่วนร่วมของ Tomcat และเซิร์ฟเวอร์แอปพลิเคชันใด ๆ (นี่คือหัวข้อสำหรับการสนทนาแยกต่างหาก) เมื่อต้องการทำเช่นนี้ในโครงสร้างโครงการในโฟลเดอร์ มาสร้างแพ็คเกจ ru.javarush.endpoint กัน และในนั้นเราจะสร้างคลาส HelloWebServicePublisher ด้วยวิธีการหลัก: package ru ชวารัช จุดสิ้นสุด;นำเข้า ru. ชวารัช ส. สวัสดีWebServiceImpl; HelloWebServicePublisher ระดับสาธารณะ ( public static void main (String... args) ( // เริ่มเว็บเซิร์ฟเวอร์บนพอร์ต 1986 // และไปยังที่อยู่ที่ระบุในอาร์กิวเมนต์แรก// เริ่มบริการเว็บที่ส่งผ่านในอาร์กิวเมนต์ที่สอง จุดสิ้นสุด เผยแพร่("http://localhost:1986/wss/hello" , HelloWebServiceImpl ใหม่ () );) ) ทีนี้เรามาเริ่มคลาสนี้กันดีกว่าโดยคลิก

กะ+F10

- จะไม่ปรากฏในคอนโซล แต่เซิร์ฟเวอร์กำลังทำงานอยู่ คุณสามารถตรวจสอบได้โดยพิมพ์บรรทัด http://localhost:1986/wss/hello?wsdl ในเบราว์เซอร์ของคุณ ในทางกลับกัน หน้าที่เปิดขึ้นมาจะพิสูจน์ได้ว่าเรามีเว็บเซิร์ฟเวอร์ (http://) ที่ทำงานบนพอร์ต 1986 บนคอมพิวเตอร์ของเรา (localhost) และในทางกลับกัน แสดงคำอธิบาย WSDL ของบริการบนเว็บของเรา หากคุณหยุดแอปพลิเคชัน คำอธิบายจะไม่สามารถใช้งานได้ เช่นเดียวกับบริการบนเว็บ ดังนั้นเราจะไม่ทำเช่นนี้ แต่ดำเนินการเขียนไคลเอ็นต์ต่อไป srcลูกค้า ในโฟลเดอร์โครงการ มาสร้างแพ็คเกจ ru.javarush.client และในคลาส HelloWebServiceClient ด้วยวิธีการหลัก: package ru ชวารัช ลูกค้า;// จำเป็นต้องได้รับคำอธิบาย wsdl และผ่านมัน // เข้าถึงบริการเว็บเองนำเข้าจาวา สุทธิ. URL; // ข้อยกเว้นนี้จะเกิดขึ้นเมื่อทำงานกับวัตถุ URL นำเข้าจาวา สุทธิ. URLException มีรูปแบบไม่ถูกต้อง;// คลาสเพื่อแยกวิเคราะห์ xml พร้อมคำอธิบาย wsdl // และไปถึงแท็กบริการในนั้นนำเข้า javax. xml. เนมสเปซ ชื่อคิว; นำเข้า javax. xml. ส. บริการ;// อินเทอร์เฟซของบริการเว็บของเรา (เราต้องการมากกว่านี้) นำเข้า ru. ชวารัช ส. สวัสดีเว็บเซอร์วิส;) ; HelloWebServiceClient คลาสสาธารณะ ( โมฆะสาธารณะคงหลัก (String args) พ่น MalformedURLException ( // สร้างลิงก์ไปยังคำอธิบาย wsdl URL URL = URL ใหม่ ("http://localhost:1986/wss/hello?wsdl" // เราดูที่พารามิเตอร์ของตัวสร้างถัดไปในแท็กแรกของคำอธิบาย WSDL - คำจำกัดความ// ดูอาร์กิวเมนต์ที่ 1 ในแอตทริบิวต์ targetNamespace // ดูอาร์กิวเมนต์ที่ 2 ในแอตทริบิวต์ name QName qname = QName ใหม่ ("http://ws.site/" , "HelloWebServiceImplService" ) ;// ตอนนี้เราสามารถเข้าถึงแท็กบริการในคำอธิบาย wsdl แล้ว บริการ บริการ = บริการ สร้าง (url, qname) ;ระบบ. ออก. println (สวัสดี getHelloString ( "JavaRush" ) ) ;

) ) ฉันให้ความคิดเห็นสูงสุดเกี่ยวกับรหัสในรายการ ฉันไม่มีอะไรจะเพิ่ม ดังนั้นมาเริ่มกันเลย (Shift+F10) เราควรเห็นข้อความในคอนโซล: สวัสดี JavaRush! หากคุณไม่เห็น แสดงว่าคุณอาจลืมเริ่มบริการเว็บ

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

รปภ.

เราได้เลือกบริการเว็บที่ดีที่สุด 10 รายการ ซึ่งบทวิจารณ์ดังกล่าวเผยแพร่ใน Lifehacker เมื่อปีที่แล้ว เครื่องมือเหล่านี้ช่วยให้เราจัดระเบียบเวลาและทำงานเป็นทีมได้อย่างมีประสิทธิภาพ จัดการธุรกิจของเรา ได้รับความรู้ใหม่ ๆ และพัฒนาความสามารถของเรา และรับความเพลิดเพลินจากการพักผ่อนและความบันเทิงมากขึ้น ลองใช้มันในปีใหม่แล้วปล่อยให้ชีวิตของคุณสดใสและสะดวกสบายยิ่งขึ้น! การผสมผสาน ifttt อันชาญฉลาดช่วยให้คุณสร้างความสัมพันธ์ระหว่างเหตุและผลระหว่างเหตุการณ์ในบริการเว็บต่างๆ ตาม "ถ้านี้ เกิดขึ้นในบริการหนึ่งแล้วที่

Bookmate คือห้องสมุดอิเล็กทรอนิกส์ส่วนตัวของคุณ หนังสือที่สามารถอ่านได้บนคอมพิวเตอร์และอุปกรณ์มือถือของคุณ (iPhone, iPad, Android, Symbian) ในเวลาเดียวกัน ข้อมูลจะถูกซิงโครไนซ์ระหว่างอุปกรณ์ที่คุณใช้ - เมื่อคุณเริ่มอ่านบนคอมพิวเตอร์ของคุณ คุณสามารถอ่านต่อบนสมาร์ทโฟนหรือแท็บเล็ตจากจุดที่คุณค้างไว้ได้ กองทุน Bookmate จัดเก็บหนังสือฟรีหลายพันเล่ม หนังสือหลายเล่มมีจำหน่ายโดยสมัครสมาชิกในราคาเพียง 99 รูเบิลต่อเดือน หากคุณไม่พบหนังสือที่ต้องการ คุณสามารถอัปโหลดไปยังห้องสมุดได้ด้วยตัวเอง บริการนี้ช่วยให้คุณสามารถแบ่งปันคำแนะนำกับเพื่อน ดูรายการเรื่องรออ่าน และยืมหนังสือจากชั้นหนังสือของพวกเขาได้ สำหรับผู้รักการอ่าน ฉันยังสามารถแนะนำเครือข่ายโซเชียลที่ยอดเยี่ยมของคนรักหนังสือ Goodreads (ใน Lifehacker พร้อมส่วนเสริมที่น่าสนใจจาก Petr Didenko และ Viktor Zakharchenko) ซึ่งฉันใช้ตัวเองมาเกือบปีแล้วและที่เราพูดถึงในตอนที่ 40 ของ พอดแคสต์ “42” ร่วมกับ Petr Didenko และ Viktor Zakharchenko

บริษัทยุคใหม่ต้องใช้เทคโนโลยีใหม่ๆ เพื่อเพิ่มขีดความสามารถในการแข่งขันและกระตุ้นการพัฒนา งานบัญชีและการจัดการธุรกิจจำนวนมากสามารถจ้างจากภายนอกได้ และในหลายกรณี จะสะดวกสำหรับผู้ประกอบการรายบุคคลหรือ LLC ที่จะใช้บริการคลาวด์ เช่น “My Business” บริการนี้เป็นบริการทดแทนการเอาท์ซอร์สแบบเดิมๆ ที่ทำกำไรได้ ด้วยความช่วยเหลือนี้ คุณสามารถเก็บบันทึกทางบัญชี คำนวณภาษี ส่งรายงานไปยังหน่วยงานของรัฐทางอิเล็กทรอนิกส์ผ่านทางอินเทอร์เน็ต แบบกึ่งอัตโนมัติ รับคำแนะนำจากผู้เชี่ยวชาญ และใน 15 นาที ก็สร้างชุดเอกสารที่จำเป็นสำหรับการลงทะเบียนผู้ประกอบการแต่ละราย (และในไม่ช้าก็จะ สามารถจัดเตรียมเอกสารและสำหรับการจดทะเบียน LLC ได้) โปรดให้ความสนใจกับบริการที่คล้ายกันจากบริษัท SKB Kontur - นักบัญชีอิเล็กทรอนิกส์ "Elba" หากคุณสนใจในหัวข้อเทคโนโลยีคลาวด์สำหรับธุรกิจ ลองฟังพอดแคสต์ตอนที่ 54 “42” โดยมี Peter Didenko และ Nina Gorbunova เข้าร่วม

บริการคลาวด์ที่สำคัญอีกประเภทหนึ่งคือระบบการจัดการโครงการ หนึ่งในสิ่งที่ดีที่สุด (และฟรี) คือ TeamLab ซึ่งเป็นคู่แข่งที่คู่ควรกับ Basecamp และระบบยอดนิยมอื่น ๆ TeamLab มีสามโซลูชัน ได้แก่ SaaS สำหรับใช้ในเบราว์เซอร์ทันทีหลังจากลงทะเบียนบัญชี ในรูปแบบของโอเพ่นซอร์สโค้ด ซึ่งคุณสามารถแก้ไขได้อย่างอิสระเพื่อให้เหมาะกับความต้องการและรสนิยมของคุณ จากนั้นจึงปรับใช้ระบบบนเซิร์ฟเวอร์ของคุณ และเป็นเครื่องเสมือนที่มีพอร์ทัล TeamLab ที่ติดตั้งไว้ล่วงหน้าบนเซิร์ฟเวอร์ Amazon TeamLab มีโมดูลสำหรับการจัดการโครงการ การทำงานร่วมกัน การจัดการเอกสาร ปฏิทิน ระบบ CRM (ระบบการจัดการลูกค้าสัมพันธ์) Nina Gorbunova ผู้จัดการฝ่ายการตลาดของ TeamLab นำเสนอระบบนี้ในตอนที่ 54 ของพอดแคสต์ “42” เกี่ยวกับเทคโนโลยีคลาวด์สำหรับธุรกิจ

บริการทันสมัยใหม่ Pinterest ช่วยให้คุณสร้างบอร์ดเสมือนจริงที่สวยงามพร้อมรูปภาพของวัตถุ อาคาร สถานที่ การตกแต่งภายใน อาหาร ทุกสิ่งที่คุณรักและต้องการแสดงให้ผู้อื่นเห็น ออบเจ็กต์ใหม่จะถูกเพิ่มลงในบอร์ดอย่างง่ายดาย - โดยใช้ bookmarklet สำหรับเบราว์เซอร์หรือด้วยตนเองผ่านทางเว็บอินเตอร์เฟส บน Pinterest คุณสามารถติดตามการอัพเดตกระดานเสมือนจริงของเพื่อนๆ ดูภาพที่น่าสนใจเพื่อค้นหาไอเดีย แรงบันดาลใจ และอารมณ์ดีๆ ตัวอย่างเช่น ฉันจะให้บอร์ด "แขกรับเชิญ Podcast 42 คน" พร้อมรูปถ่ายของแขกรับเชิญที่ยอดเยี่ยมทั้งหมด ข้อมูลเกี่ยวกับกิจกรรมของพวกเขา และลิงก์ไปยังตอนต่างๆ ของพอดแคสต์ที่พวกเขาเข้าร่วม

เมื่อใช้บริการติดตามเวลาของ Yast คุณสามารถติดตามเวลาที่ใช้ในโปรเจ็กต์ต่างๆ และงานแต่ละงาน ค้นหาจุดอ่อนในตารางงานของคุณและปรับให้เหมาะสม บริการนี้มีไว้สำหรับผู้ใช้รายบุคคลและทีมขนาดเล็ก ตัวจับเวลางานจะเริ่มต้นและหยุดด้วยคลิกเดียว และต่อมาคุณจะได้รับรายงานโดยละเอียดในส่วนต่างๆ ตัวติดตามเวลาเป็นเครื่องมือจัดการเวลาที่มีประโยชน์มาก - มีความสำคัญพอๆ กับผู้จัดการงานและปฏิทิน จากประสบการณ์ของฉันเอง ฉันรู้ว่าประสิทธิผลส่วนบุคคลสามารถปรับปรุงได้อย่างมากโดยการศึกษาตารางการทำงานของคุณอย่างลึกซึ้ง และอุทิศเวลาเล็กน้อยเพื่อเพิ่มประสิทธิภาพ

Moredays เป็นผู้จัดงานออนไลน์ที่มีสไตล์ในฐานะนักวางแผนกระดาษและชวนให้นึกถึง Moleskines ในตำนาน ข้อได้เปรียบหลักคือความงามอันน่าทึ่ง นักออกแบบพยายามอย่างเต็มที่และกลายเป็นหนึ่งในผู้จัดงานที่สวยที่สุดในโลก ในเวลาเดียวกัน Moredays มีฟังก์ชันการทำงานที่ค่อนข้างครบครัน: คุณสามารถจัดการงาน วางแผนเวลาในปฏิทิน บันทึกการจัดเก็บ รายชื่อติดต่อ แชร์เพจผู้จัดงานแต่ละคนกับบุคคลอื่นผ่านทาง Twitter, Facebook และ Google+, ซิงโครไนซ์ข้อมูลกับ Evernote และ Google Apps และ เร็วๆ นี้จะมีไคลเอนต์สำหรับอุปกรณ์มือถือ

หากคุณเป็นหนึ่งในผู้ก่อตั้ง Facebook โครงการใดๆ ของคุณก็จะโด่งดังทันที นี่คือสิ่งที่เกิดขึ้นกับระบบการจัดการโครงการ Asana ของ Dustin Moskowitz ผู้ร่วมก่อตั้งเครือข่ายโซเชียลที่ใหญ่ที่สุดในโลก อย่างไรก็ตาม Asana สมควรได้รับความสนใจไม่เพียงเพราะบุคลิกของ Dustin เท่านั้น แต่นักพัฒนาได้สร้างบริการที่ง่ายและสะดวกพร้อมอินเทอร์เฟซที่น่าพึงพอใจ แต่เข้มงวด อาสนะเหมาะสำหรับการใช้งานส่วนบุคคลและการทำงานเป็นทีมขนาดเล็ก ฟังก์ชันการทำงานของระบบแทบจะเรียกได้ว่าสมบูรณ์ไม่ได้ แต่บางทีนี่อาจเป็นข้อได้เปรียบหลักประการหนึ่งสำหรับผู้ที่ไม่ต้องการเครื่องมือการจัดการโครงการที่มีฟังก์ชันมากเกินไป Asana ประสานกับ Google Calendar, Apple iCal และ Microsoft Outlook ทำงานร่วมกับเมล และมีไคลเอนต์สำหรับสมาร์ทโฟนและแท็บเล็ต

BO.LT มอบโอกาสที่เรียบง่ายแต่น่าทึ่งในการแก้ไขหน้าเว็บตามที่คุณต้องการ ก็เพียงพอที่จะระบุที่อยู่และคุณสามารถเปลี่ยนแปลงข้อความและการออกแบบสำเนาของหน้าเว็บนี้ได้อย่างง่ายดายโดยไม่ต้องมีความรู้ HTML และเทคโนโลยีการพัฒนาเว็บอื่น ๆ จากนั้นส่งลิงก์แบบสั้นไปยังผลลัพธ์ให้ผู้อื่น . เพื่อนหรือเพื่อนร่วมงานที่คุณเชิญให้ดูสามารถแก้ไขหน้าเว็บนี้ได้ บริการนี้เป็นสิ่งที่ขาดไม่ได้เมื่อคุณต้องการเห็นภาพลักษณะที่ปรากฏของเว็บไซต์อย่างชัดเจนหลังจากการปรับเปลี่ยนต่างๆ ระดมความคิดใหม่ๆ ในการออกแบบ หรือแสดงหน้าเว็บพร้อมความคิดเห็นที่อธิบายให้เพื่อนของคุณดู คุณสามารถเปลี่ยนไปใช้โหมดแก้ไขโค้ด HTML เพื่อให้มีอิสระในการดำเนินการมากยิ่งขึ้น

เรียนผู้อ่าน บริการเว็บใดที่คุณชอบในปี 2554? คุณสามารถแนะนำสิ่งใดให้เรารีวิวใน Lifehacker ได้บ้าง

บริการเว็บคือซอฟต์แวร์ที่ให้การเข้าถึงข้อมูลโดยไม่ขึ้นกับแพลตฟอร์มสำหรับผลิตภัณฑ์ซอฟต์แวร์อื่นๆ ผ่านทางอินเทอร์เน็ต โดยใช้ XML และมาตรฐาน เช่น SOAP, WSDL และ UDDI

บริการเว็บสามารถนำไปใช้ในทางปฏิบัติได้อย่างไร? ลองนึกภาพตลาดหลักทรัพย์ที่เซิร์ฟเวอร์มีข้อมูลที่ครบถ้วนเกี่ยวกับราคาปัจจุบันของหลักทรัพย์ทั้งหมดที่ซื้อขายในตลาดหลักทรัพย์นี้ นี่เป็นข้อมูลที่สำคัญมาก การเข้าถึงแบบออนไลน์ซึ่งอาจมีคุณค่าและเป็นประโยชน์สำหรับระบบซอฟต์แวร์ระยะไกล หรืออีกตัวอย่างหนึ่งที่ใกล้เคียงกับคนทั่วไป: เซิร์ฟเวอร์สำนักอุตุนิยมวิทยาอาจมีข้อมูลเกี่ยวกับสภาพอากาศในบางภูมิภาคหรือทั่วโลก ข้อมูลนี้อาจถูกใช้โดยแอปพลิเคชันบุคคลที่สาม

หลายคนมักเห็นผู้แจ้งสภาพอากาศ แต่นี่ไม่ใช่วิธีที่สะดวกที่สุดในการรับข้อมูลจริงสำหรับแอปพลิเคชันขององค์กร เนื่องจากจะจำกัดความสามารถในการดำเนินการกับข้อมูลที่ได้รับ คุณสามารถทำสองสิ่งกับผู้แจ้งได้เท่านั้น: “แขวน” ไว้บนเว็บไซต์ของคุณ หรือลบออกจากเว็บไซต์หากมีการโพสต์ไว้ที่นั่นแล้ว แต่แล้วแอปพลิเคชันที่ต้องการรับข้อมูลดิบจากเซิร์ฟเวอร์ Met Office และประมวลผลเพื่อดำเนินการที่ซับซ้อนบางอย่าง (เช่น สร้างแบบจำลองแผนที่แบบกราฟิกและพล็อตอุณหภูมิที่สอดคล้องกันในภูมิภาค)

เพื่อแก้ไขปัญหาดังกล่าว ตลาดหลักทรัพย์หรือเซิร์ฟเวอร์สำนักงานพยากรณ์อากาศสามารถเป็นผู้ให้บริการเว็บได้ และแอปพลิเคชันที่รับข้อมูลจากบริการเหล่านี้ผ่านทางอินเทอร์เน็ตสามารถกลายเป็นผู้บริโภคข้อมูลนี้ได้ ด้วยวิธีนี้ สถาปัตยกรรมไคลเอนต์-เซิร์ฟเวอร์จึงถูกสร้างขึ้น โดยที่ผู้ให้บริการข้อมูลคือเซิร์ฟเวอร์ และผู้บริโภคคือไคลเอนต์ ในขณะที่เซิร์ฟเวอร์และซอฟต์แวร์ไคลเอนต์ไม่จำเป็นต้องเข้ากันได้ เงื่อนไขหลักคือการรองรับบริการบนเว็บ

การแลกเปลี่ยนระหว่างเซิร์ฟเวอร์และไคลเอนต์ดำเนินการโดยใช้โปรโตคอลอินเทอร์เน็ตมาตรฐาน เช่น HTTP บริการเว็บอธิบายตัวเองและกำหนด API สำหรับการโต้ตอบกับมัน ในกรณีนี้ องค์ประกอบของ API นี้จะถูกแปลงเป็นโครงสร้างภาษาสำหรับภาษาการเขียนโปรแกรมที่แอปพลิเคชันไคลเอนต์ใช้โดยอัตโนมัติ บริการบนเว็บได้รับการอธิบายตามข้อกำหนด WSDL (Web Services Description Language) ข้อมูลจะถูกถ่ายโอนจากเซิร์ฟเวอร์ไปยังไคลเอนต์ในรูปแบบ SOAP (Simple Object Access Protocol)

กล่าวอีกนัยหนึ่ง แอปพลิเคชันไคลเอนต์เข้าถึงไฟล์ WSDL ด้วย URL ของมัน เช่น โดยใช้วิธี GET ตามปกติ ในเวลาเดียวกันจะได้รับคำอธิบายวิธีการบริการเว็บและจากนั้นสามารถใช้เป็นวิธีการของตัวเองได้ (นั่นคือโดยไม่ต้องเขียนโค้ดเพิ่มเติมบนฝั่งไคลเอ็นต์ - บริการบนเว็บจะกลายเป็นความต่อเนื่องระยะไกลของไคลเอนต์ โปรแกรม)

อเล็กซานเดอร์ คาชานอฟ

แนวคิดเกี่ยวกับบริการเว็บได้รับการพัฒนาโดยยักษ์ใหญ่ในอุตสาหกรรมคอมพิวเตอร์เช่น Sun, Oracle, HP, Microsoft และ IBM แนวคิดนี้ไม่ใช่เรื่องใหม่ แต่เป็นก้าวสำคัญสู่การเข้าถึงโปรแกรมต่างๆ ผ่านทางเว็บได้ง่ายขึ้น ตามรูปแบบการสื่อสารมาตรฐาน บริการเว็บสามารถเปลี่ยนวิธีคิดของเราเกี่ยวกับวิธีการสร้างเว็บไซต์ได้อย่างสมบูรณ์

บริการเว็บคืออะไร?

ด้วยบริการเว็บ ทำให้สามารถใช้งานฟังก์ชันของโปรแกรมต่างๆ ผ่านทางอินเทอร์เน็ตได้ ดังนั้น โปรแกรมต่างๆ เช่น PHP, ASP, JSP scripts, JavaBeans, COM object และเครื่องมือการเขียนโปรแกรมอื่นๆ ที่เราชื่นชอบทั้งหมดสามารถเข้าถึงบางโปรแกรมที่ทำงานบนเซิร์ฟเวอร์อื่นได้ (เช่น บริการบนเว็บ) และใช้การตอบสนองที่ได้รับจากเธอบนเว็บไซต์ของเธอ หรือ แอปพลิเคชัน.

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

ใครที่เคยร่วมงานด้วย. ฮอตเมลพบบริการบนเว็บบางส่วนแล้ว: ระบบตรวจสอบสิทธิ์ผู้ใช้ Passport เป็นหนึ่งในบริการที่รวมอยู่ในโครงการริเริ่ม Microsoft .NET ปัจจุบันเปิดให้ใช้งานฟรี ดังนั้นผู้สร้างเว็บไซต์จึงใช้การตรวจสอบสิทธิ์ผู้ใช้บนเว็บไซต์ของตนได้อย่างง่ายดาย

พื้นฐาน

หลักการเบื้องหลังบริการเว็บนั้นเรียบง่ายอย่างน่าประหลาดใจ และพวกเขาไม่ได้เพิ่มอะไรใหม่ให้กับโลกแห่งการประมวลผลแบบกระจายและอินเทอร์เน็ต:

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

การดำเนินการนี้อาจเป็น เช่น การแสดงราคาหุ้น การแสดงราคาของผลิตภัณฑ์เฉพาะ บันทึกรายการในปฏิทินการนัดหมาย การแปลข้อความจากภาษาหนึ่งเป็นอีกภาษาหนึ่ง หรือการตรวจสอบหมายเลขบัตรเครดิต

มาตรฐานที่เป็นแกนหลัก

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

ก่อนหน้านี้ บริษัทหลายแห่งได้พัฒนามาตรฐานและรูปแบบที่เป็นกรรมสิทธิ์ของตนเอง และตอนนี้ในการทำงาน เราเพียงแค่ต้องรู้ XML แบบง่าย (eXtensible Markup Language) ซึ่งถูกส่งผ่านโปรโตคอล HTTP เก่าที่คุ้นเคย ซึ่งหมายความว่าทุกคนสามารถเข้าถึงข้อมูลเกี่ยวกับวิธีการทำงานของบริการเว็บได้ และนักพัฒนาเว็บที่คุ้นเคยกับเทคโนโลยีเหล่านี้ตามอาชีพก็สามารถเริ่มใช้บริการเว็บได้แล้ววันนี้

ความแตกต่างระหว่างบริการเว็บและเทคโนโลยีอื่นๆ ที่นักพัฒนาพบ (เช่น DCOM, เนมไปป์, RMI) ก็คือบริการเว็บเป็นไปตามมาตรฐานแบบเปิด ง่ายต่อการเรียนรู้ และมาตรฐานเหล่านี้ได้รับการสนับสนุนอย่างกว้างขวางทั่วโลก และแพลตฟอร์ม Windows

Simple Object Access Protocol (SOAP) เป็นโปรโตคอลมาตรฐานที่พัฒนาโดย W3C มันกำหนดรูปแบบของคำขอไปยังบริการเว็บ

ข้อความระหว่างบริการเว็บและผู้ใช้จะถูกบรรจุในซอง SOAP ข้อความประกอบด้วยคำขอให้ดำเนินการบางอย่าง หรือการตอบกลับ - ผลลัพธ์ของการดำเนินการนี้ เอนเวโลปและเนื้อหาได้รับการเข้ารหัสในรูปแบบ XML และค่อนข้างเข้าใจง่าย นี่คือลักษณะของคำขอ SOAP ธรรมดาเมื่อส่งผ่าน HTPP ไปยังบริการเว็บ:

xmlns:env="http://www.w3.org/2001/06/soap-envelope">


xmlns:m="http://www.somesite.com/Postcode">
WC1A8GH
สหราชอาณาจักร


องค์ประกอบที่สำคัญของซอง SOAP นั้นค่อนข้างง่ายต่อการค้นหา: นี่คือพารามิเตอร์สองตัว ( ("รหัสไปรษณีย์") และ ("ประเทศ")) ซึ่งบรรจุอยู่ภายในองค์ประกอบที่เรียกว่า - องค์ประกอบนี้คือชื่อของบริการเว็บที่เรากำลังทำการร้องขอ ข้อมูลอื่นๆ ในเอนเวโลป เช่น การเข้ารหัสข้อความและเวอร์ชัน SOAP ช่วยให้บริการเว็บประมวลผลคำขอได้อย่างถูกต้อง

และคำตอบจะเป็นดังนี้:

xmlns:env="http://www.w3.org/2001/06/soap-envelope">

env:encodingStyle="http://www.w3.org/2001/06/soap-encoding"
xmlns:m="http://www.somesite.com/Postcode">
ใช่


ข้อความนี้ถอดรหัสได้ง่ายยิ่งขึ้น องค์ประกอบ ในคำขอของเราเปลี่ยนเป็นองค์ประกอบ เพื่อตอบสนองต่อการร้องขอ องค์ประกอบนี้มีเพียงองค์ประกอบเดียวเท่านั้น ค่าที่ระบุว่ารหัสไปรษณีย์ของเราถูกต้องหรือไม่ ดังนั้นด้วยความมหัศจรรย์ของ SOAP เราจึงได้สร้างแบบสอบถามที่มีประโยชน์สำหรับเรา ในการตอบสนองผ่านเครือข่าย เราได้รับการตอบกลับบางประเภทในรูปแบบ XML

ตอนนี้เกี่ยวกับ UDDI

แม้ว่าโปรโตคอล SOAP จะเรียบง่าย แต่บริการบนเว็บก็มีประโยชน์เพียงเล็กน้อยหากเราไม่มีทางค้นหามันได้ โชคดีที่ IBM, Microsoft และ Ariba ก้าวขึ้นมาและสร้างโครงการ Universal Description, Discovery and Integration (UDDI) ซึ่งพวกเขาหวังว่าจะกลายเป็นแค็ตตาล็อกทั่วไปของบริการเว็บทั้งหมดบนเว็บ

ระบบ UDDI ช่วยให้บริษัทต่างๆ สามารถเปิดเผยบริการเว็บของตนต่อสาธารณะได้ ไดเร็กทอรีนี้ทำหน้าที่เป็นสมุดโทรศัพท์สำหรับบริการบนเว็บทั้งหมด การลงทะเบียนในไดเร็กทอรี UDDI นั้นฟรี และผู้ก่อตั้งโครงการหวังว่าไดเร็กทอรีนี้จะมีคำอธิบายของบริการทั้งหมด ทั้งหมด ทั้งหมดทั่วทั้งเว็บ เพื่อที่จะค้นหาบริการเว็บที่ต้องการ ก็เพียงพอที่จะเปลี่ยนเป็นบริการเดียวเท่านั้น ไดเรกทอรี UDDI

มันทำงานอย่างไร

ดังนั้นฉันจะค้นหาบริการทางเว็บที่เหมาะสมได้อย่างไร?

ลองจินตนาการว่าฉันเป็นนักพัฒนาเว็บไซต์ และลูกค้าของฉันขอให้ฉันเพิ่มคุณสมบัติใหม่ให้กับไซต์: ฉันต้องเพิ่มการตรวจสอบรหัสไปรษณีย์ในแบบฟอร์มลงทะเบียน

ในการดำเนินการตรวจสอบนี้ ฉันจะต้องสร้างฐานข้อมูลของรหัสไปรษณีย์ทั้งหมดใน 30 ประเทศที่บริษัทของเราดำเนินธุรกิจ จากนั้นตรวจสอบว่ารหัสไปรษณีย์สอดคล้องกับเมืองที่ระบุในการลงทะเบียนเมื่อลงทะเบียน แต่ฉันไม่มีข้อมูลนี้ และฉันคิดว่าการรวบรวมข้อมูลดังกล่าวจะต้องใช้เงินจำนวนมาก

แทนที่จะเสียเงินเพื่อซื้อฐานข้อมูล ให้เขียนโค้ดด้วยตัวเอง ตรวจสอบความสมบูรณ์และความถูกต้องของข้อมูลทั้งหมด และแก้ไขจุดบกพร่องของสคริปต์ ฉันแค่ไปที่ไดเร็กทอรี UDDI และดูว่ามีบริการเว็บที่สามารถทำงานได้หรือไม่ ฉัน . เมื่อมาถึงเว็บไซต์ http://www.uddi.org/ ฉันเริ่มการค้นหาและพบบริการที่เป็นเลิศจาก XYZ Corp.

ฉันตรวจสอบคำจำกัดความของรูปแบบบริการเว็บอย่างละเอียด (คำจำกัดความเขียนด้วยภาษา WSDL (Web Services Description Language) เพื่อให้แน่ใจว่าบริการดังกล่าวตอบสนองความต้องการของฉัน จากนั้น ฉันจะตรวจสอบกับเพื่อนร่วมงานเกี่ยวกับชื่อเสียงของ XYZ Corp. และค้นหา ว่ามีความมั่นคง แล้วติดต่อ XYZ Corp เพื่อสอบถามราคา หากราคาในการเข้าถึงบริการอยู่ในงบประมาณของฉัน ฉันจะเขียนหน้า JSP ง่ายๆ สำหรับเว็บไซต์ของฉันที่เรียกใช้บริการเว็บของ XYZ Corp และแท้จริงแล้ว การยืนยันทันที ปรากฏบนเว็บไซต์

มันคุ้มค่ากับเวลาของคุณ

แม้ว่าคุณจะไม่มีอะไรเกี่ยวข้องกับการเขียนโปรแกรมหรือเทคโนโลยีการพัฒนาเว็บไซต์ แต่บริการเว็บก็คุ้มค่าที่จะเรียนรู้เพิ่มเติม ลองนึกภาพว่าคุณพูดคุยกับเว็บไซต์ใหม่กับลูกค้าอย่างไร พูดคุยเกี่ยวกับฟังก์ชันทั้งหมดของโครงการใหม่ ทุกอย่างเป็นไปด้วยดี: งบประมาณเป็นไปตามความคาดหวังของลูกค้า เขาชอบแบบร่างของแผนเว็บไซต์ และชอบตัวอย่างอินเทอร์เฟซ ดูเหมือนว่าทุกอย่างจะทำงาน

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

ทิ้งความกลัวของคุณ! ฉันรับประกันได้ว่ามีบริการเว็บบนอินเทอร์เน็ตที่พร้อมที่จะมอบฟังก์ชั่นที่จำเป็นให้กับคุณแล้วและค่าใช้จ่ายในการใช้บริการเว็บนี้จะต่ำกว่าต้นทุนในการพัฒนาอะนาล็อกอย่างอิสระมาก วิธีนี้จะช่วยนักพัฒนาของคุณจากเรื่องปวดหัวที่ไม่จำเป็น ลูกค้าของคุณไม่ต้องเสียเงินโดยใช้เวลาเพียงไม่กี่นาทีในการเรียกดูไดเร็กทอรี UDDI

การพัฒนาบริการ

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

ทางเลือกของเครื่องมือสำหรับการพัฒนาบริการเว็บนั้นมีมากมาย ประกอบด้วยเครื่องมือจากบริษัทต่างๆ เช่น Sun (Open Net), Microsoft (.NET), (e-services) และ IBM (Web Services) นอกจากนี้ยังมีกรอบโอเพ่นซอร์ส ตัวอย่างเช่น Mono Project มีเป้าหมายที่จะแทนที่ชุดเครื่องมือ .NET ของ Microsoft โดยการจัดหาคอมไพเลอร์ รันไทม์ และไลบรารีเพื่อเรียกใช้บริการเว็บเดียวกันบนทุกแพลตฟอร์ม รวมถึง Unix

แม้จะมีเซิร์ฟเวอร์และเครื่องมือพัฒนาบริการเว็บที่หลากหลาย แต่ทั้งหมดก็รองรับโปรโตคอล SOAP, ภาษา XML และระบบ UDDI เดียวกัน

ข้อเสีย

ก่อนที่ฉันจะละทิ้งอาชีพการเป็นโปรแกรมเมอร์ไปโดยสิ้นเชิงและอุทิศตนให้กับการใช้บริการเว็บ ฉันต้องถามตัวเองก่อน: “มันเป็นภาพสีดอกกุหลาบเกินไป เกิดอะไรขึ้น?” น่าเสียดายที่ศักยภาพที่ยอดเยี่ยมของบริการทางเว็บนั้นมาพร้อมกับราคา:

  • การใช้ XML เป็นรูปแบบการถ่ายโอนข้อมูลหมายความว่าข้อความของคุณจะมีขนาดใหญ่มาก แท็ก XML เองก็ใช้พื้นที่มาก และทำให้เรามีภาระในการสร้าง ส่ง และตีความข้อความ
  • เนื่องจากเราใช้คอมพิวเตอร์ระยะไกลเพื่อทำหน้าที่บางอย่าง เราจึงพึ่งพาอินเทอร์เน็ตโดยสิ้นเชิง ซึ่งสร้างลิงก์ที่ไม่น่าเชื่อถือมากเกินไปในลูกโซ่ระหว่างเว็บเซิร์ฟเวอร์ของเราและบริการบนเว็บ
  • ปัจจุบัน มีเพียงไม่กี่บริษัทที่สร้างบริการทางเว็บ และมีเพียงไม่กี่บริษัทเท่านั้นที่ใช้บริการดังกล่าว การดีบักและปรับปรุงระบบบริการเว็บยังต้องใช้เวลาอีกนาน
  • ระบบการออกใบอนุญาตและการเรียกเก็บเงินสำหรับการใช้บริการเว็บยังไม่ได้รับการยอมรับจากนักพัฒนา เนื่องจากยังมีบริการบนเว็บน้อยเกินไป บริษัทส่วนใหญ่จึงพยายามสร้างความประทับใจที่ดีต่อผู้มีโอกาสเป็นลูกค้าโดยจงใจลดต้นทุนการบริการและเสนอเงื่อนไขสิทธิ์การใช้งานที่ดี ยังต้องใช้เวลาอีกระยะหนึ่งก่อนที่ต้นทุนที่แท้จริงของบริการเว็บจะชัดเจน

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