ฉันได้ดูคำถามเทคโนโลยีการสร้างเลเยอร์บริการที่ดี แต่ฉันมีคำถามบางอย่างเกี่ยวกับเรื่องนี้ที่ฉันต้องการความช่วยเหลือ
ก่อนอื่นข้อมูลเกี่ยวกับสิ่งที่ฉันมีสำหรับความต้องการ ขณะนี้เรามีแอปพลิเคชั่นเว็บจำนวนมากที่พูดคุยกันในแบบแมงมุมใยแมงมุม (ทั้งหมดพูดคุยกันในลักษณะสับสนผ่านเว็บเซอร์และฐานข้อมูล)
- เราต้องการเปลี่ยนแปลงสิ่งนี้เพื่อให้แอปพลิเคชันทั้งหมดผ่านเลเยอร์บริการที่เราสามารถทำงานได้มากขึ้นด้วยแคชและแค็ปซูลฟังก์ชั่นทั่วไปและอีกมากมาย
- เราต้องการให้เลเยอร์นี้มี Web API เพื่อให้ลูกค้าบุคคลที่สามสามารถใช้ข้อมูลจากบริการได้
ปัญหาที่ฉันเห็นคือถ้าเราสร้างเลเยอร์บริการด้วยพูด MVC4 Web API เราไม่จำเป็นต้องสื่อสารระหว่างแอปพลิเคชันที่ใช้ webAPI ซึ่งหมายความว่าเราต้องสร้าง URL และใช้ JSON / Xml ที่ไม่ได้เสียงที่มีประสิทธิภาพเกินไป ฉันคิดว่าวิธีที่ดีกว่านี้คือการทำงานกับเอนทิตีและ WCF เพื่อสื่อสารระหว่างแอปพลิเคชัน แต่ถ้าอย่างนั้นเราอาจจะสูญเสียเวทย์มนตร์ Web API?
ดังนั้นคำถามคือหากมีวิธีการใช้เลเยอร์บริการทั้ง Web API (JSON / XML) และเป็นเลเยอร์บริการแบ็คเอนด์ที่มีเอนทิตี้มากกว่า หากเราถูกบังคับให้ใช้ 2 ชั้นบริการที่แตกต่างกันเราอาจต้องทำซ้ำฟังก์ชั่นบางอย่างและสิ่งเลวร้ายอื่น ๆ
หวังว่าคำถามจะชัดเจนเพียงพอและโปรดถามหากคุณต้องการข้อมูลเพิ่มเติม