Service Mashup with User Interfaces - TheOpenCloudEngine/uEngine-cloud GitHub Wiki
Service Mashup(Service Composition) μ μ¬λ¬κ°μ§ μλΉμ€λ₯Ό νλλ‘ λ¬Άμ΄μ κ°μΉμλ 무μΈκ°λ₯Ό λ§λλ κ²μ΄λ€.
μ¬λ¬κ°μ§ λ°©λ²μ΄ μκ² μ§λ§ κ°μ₯ λ§μ΄ μ¬μ©νλ λ°©λ²μ User Interface (UI) λ₯Ό ν΅νμ¬
λ§μ΄ν¬λ‘ μλΉμ€λ₯Ό λ¬Άλ Human Interaction ν νλ©΄μ λ§λλ κ²μ΄λ€.
μ΅κ·Όμλ UIλ§κ³ λ chatbot(λνν) μΌλ‘λ λ§μ΄ Service Composition μ νκ³ μλ€.
μμ λ°©μκ°μ΄ μλΉμ€λ₯Ό λ°λ‘ UIλ‘ λ§λ€μ΄ λ΄λ μν©(jsp, cs programλ±)μμλ UIλ‘λ§ λνλΌμ μμκΈ° λλ¬Έμ
μλΉμ€λ₯Ό BPMμ λ¬Άλλ€λμ§, chatbot μ μ¬μ©νλ νμ©μ±μ΄ λ¨μ΄μ‘μλ€.
κ·Έλ¬λ κ° μλΉμ€λ€μ HATEOAS λ Restfulνκ² λ§λ€μ΄ λμΌλ©΄ νμμ λ°λΌμ UI λΏλ§ μλλΌ
chatbotμ΄λ IOTλ± μ¬λ¬κ°μ§ μΈν°νμ΄μ€μ νμ©μ ν μκ° μλ€.
- Extended Role of Front-end in MSA : Service Aggregation
- MVVM
- W3C Web Component Standard - Domain HTML Tags
- Implementation : Polymer and VueJS (Another : ReactJS and Angular2)
- Cross-Origin Resource Sharing with API Gateway ( Netflix Zuul )
μλ§μ‘΄μ΄λ facebook μ κ²λ³΄κΈ°μλ νλμ UIλ‘ λ³΄μ΄μ§λ§
λ΄λΆμ μΌλ‘λ μ²κ° μ΄μμ microservice λ€μ μ§ν©μ΄λ€.
facebook μ λ²νΌ νλ ν΄λ¦μ ν΄λΉ μλΉμ€λ‘ μ΄λμ νμ¬ μμ
μ΄ μ΄λ£¨μ΄ μ§λ€.
facebook μ μλ§μ κ°λ°μ μ€μ νλκ° λλ€λ©΄, μ 체 νλ©΄μ ꡬμ±ν νμλ μκ³ ,
μκΈ°κ° λ§λ μλΉμ€λ§ μ ꡬμ±μν€λ©΄ λλ 체κ³λ₯Ό λ§λ€ μλ μλ€.
Model-View-ViewModel ν¨ν΄. Excel μ²λΌ λͺ¨λΈμ΄ λ°λλ©΄ νλ©΄λ λ°λλ€λ κ°λ
κΈ°μ‘΄μλ web page λ₯Ό νλ ꡬμ±ν μ μ λΉ¨κ°μ λ°μ€ μ²λΌ ꡬμ±μ νμλ€.
ABCμ ꡬμ±μμκ° μμμ μ νλμ page μμ ν΄λΉ κΈ°λ₯λ€μ λ¬Άμ΄μ μ¬μ©μ νμλλ°,
μκ·λͺ¨ νλ©΄μ΄λΌλ©΄ κ°μ κΈ°λ₯λ€μ name space λ₯Ό ννΌνμ¬ κ΅¬μ±μ΄ κ°λ₯νμ§λ§,
μλΉμ€κ° 컀μ§κ³ μ½λλμ΄ λμ΄λλ©΄ name space μ νκ³ , ꡬμ±νλλ° μΆ©λμ΄ μκΈΈ μ μλ€.
μ΄κ²μ ν΄κ²°νκ³ μ κ°μ²΄ μ§ν₯ μΈμ΄μ²λΌ νλμ νλ‘κ·Έλ¨μ΄μ§λ§ κ·Έ μμμ μ¬λ¬κ°μ νλ‘κ·Έλ¨μΌλ‘
κ΄μ¬μ¬λ₯Ό λΆλ¦¬ ν μμλ class
λΌκ³ νλ interface κ° μΉμλ λμ€κ² λμλ€.
μ΄κ²μ νμ€μ΄ W3C Web Component λΌκ³ νκ³ , μλμ κ·Έλ¦Όμ νλμ λ°μ€μ²λΌ ꡬμ±λλ€.
MVVM μ λλ©μΈμμ μ μν Tags λ₯Ό νλμ HTML Tags μ²λΌ μ μνμ¬ μ¬μ©νλ€.
μ΄μ MSA μ μμ μμ μ¬μ©νμλ course λ instructor λ±μ λλ©μΈ κ°μ²΄λ€μ
νμμΌλ‘ domain specific νκ² μ μλ₯Ό νμ¬ μ¬μ© ν μμλ€.
μ΄λ κ² μ μν Domain Tags λ€μ΄ Back-End μ λ§μ΄ν¬λ‘ μλΉμ€μ resource μ λ§λ¬Όλ €
μμ¨μ μΌλ‘ μνΈ μ°κ³λ₯Ό νμ¬ νλ©΄μ νμΆμ΄ λκ² κ΅¬μ± ν μ μλ€.
MVVM μ μ€μ ꡬν체λ‘λ ꡬκΈμ΄ λ§λ Polymer, Angular2 λ
facebookμ΄ μ¬μ©νλ ReactJS, μ€κ΅μΈμ΄ λ§λ VueJS λ±μ΄ μλ€.
μ¬κΈ°μλ VueJSλ₯Ό μ¬μ©νμ¬ νλ©΄μ ꡬμ±νλ μμ λ₯Ό λ§λ€ κ²μ΄λ€.
μΉ λΈλΌμ°μ μμ ajax λ₯Ό ν΅νμ¬ μ¬λ¬κ°μ IPκ° λ€λ₯Έ λ§μ΄ν¬λ‘μλΉμ€λ₯Ό νΈμΆν μ μ
CORS(Cross-Origin Resource Sharing) λ¬Έμ κ° μκΈ°κ² λλ€.
λΈλΌμ°μ λ 1κ°μ λλ©μΈμμ λ€λ₯Έ λλ©μΈμ νΈμΆν λ,
λ€λ₯Έ λμκ³Ό μΈμ¦μ²΄κ³λ‘ μΈμμ νκΈ° λλ¬Έμ, μ κ·Όμ΄ λΆκ°λ₯ νλ€.
μ΄κ²μ ν΄κ²°νκΈ° μνμ¬ νλμ λμΌ λλ©μΈ μ²λΌ μΈμνλλ‘ λ§λλ κ²μ΄ νμνλ€.
μ΄μ μ μ€λͺ
νμλ―μ΄ Netflix Zuulμ μ¬μ©ν API Gatewayλ‘ CORSλ¬Έμ λ₯Ό ν΄κ²°ν μμλ€.
- Responsive Web
μ½λλ₯Ό μ¬λ¬λ² λ§λ€μ§ μκ³ , νλμ μ½λλ‘ νλ©΄μ μ¬μ΄μ¦μ λ§μΆκ³ ,
Android λ IOS κ΅¬λΆ μμ΄ νλ²μ μ¬μ¬μ© ν μ μλλ‘ κ΅¬μ±νλ λ°©μ
- Material Design
μ¬λ¬κ°μ§ λ¨λ§μ νΉμ±μ νμ§ μκ³ , μ¬μ©μ±μ μ’κ² νλ Design λ°©μ