çŸåšããã€ã¯ããµãŒãã¹ã¢ãŒããã¯ãã£ã䜿çšããŠã¢ããªã±ãŒã·ã§ã³ãéçºããããã®æ¢è£œã®ãã¬ãŒã ã¯ãŒã¯ã倿°ãããŸããååãšããŠããã¬ãŒã ã¯ãŒã¯ã¯2ã€ã®ã¿ã€ãã«åããããŸã-ç°ãªããã©ãããã©ãŒã ã§åäœã§ããèšèªã®å Žåã§ãããéçºã¯1ã€ã®èšèªã§å®è¡ãããŸã-SpringBootãNancyãªã©ã®äŸããŸãã2çªç®ã®ã¿ã€ãïŒãã©ãããã©ãŒã çšïŒã¯ããŸããŸãªããã°ã©ãã³ã°èšèªã§åäœã§ããŸãããã³ãŒãã¯éžæãããã©ãããã©ãŒã ïŒServiceFabricãAWS Lambdaã®äŸïŒã§ã®ã¿å®è¡ã§ããŸããããããå®éã«ã¯ãããŸããŸãªãã©ãããã©ãŒã ã§æ©èœããå€èšèªãã¬ãŒã ã¯ãŒã¯ã¯ãããŸããã
ç§ãã¡ã®ããŒã ã¯ãããŸããŸãªèšèªã§æžãããã³ã³ããŒãã³ããå«ã¿ãå€ãã®å ŽåãããŸããŸãªãã©ãããã©ãŒã ã§åäœããå¿ èŠããããã€ã¯ããµãŒãã¹ã«åºã¥ããŠãšã³ã¿ãŒãã©ã€ãºã·ã¹ãã ãéçºããŠãããããäžèšã®åé¡ã¯ç§ãã¡ã«ãšã£ãŠããéèŠã§ãããã®ãããªèŠä»¶ãæºããæ¢è£œã®ãœãªã¥ãŒã·ã§ã³ãèŠã€ãããªãã£ããããç¬èªã®ãœãªã¥ãŒã·ã§ã³ã§ããPip.ServicesToolkitãéçºããŸããããã®ããŒã«ã䜿çšãããšãå€ãã®ããã°ã©ãã³ã°èšèªã§ãã€ã¯ããµãŒãã¹ãéçºã§ããã¯ã©ãŠãå ãŸãã¯æ§å ã§ãã®ã¢ããªã±ãŒã·ã§ã³ãå®è¡ãããå Žæã«ã€ããŠå®éã«å¿é ããå¿ èŠã¯ãããŸããã
ãã®èšäºã®ç®çã¯ãå®è£ ã®è©³çްã«ç«ã¡å ¥ãããšãªããèªè ã«ãããžã§ã¯ãã®æ©èœãçè§£ãããããšã§ãããã®ããŒã«ã«ã€ããŠãã£ãšç¥ãããå Žåã¯ãç«ã®äžã§...
Pip.Servicesãšã¯äœã§ããïŒ
éçºäžãç§ãã¡ã¯å€ãã®ã¿ã¹ã¯ãã«ããŒã§ããããªãçšéã®åºãããŒã«ãäœæããããšãç®æããŸãããèšèšããã»ã¹äžã«ã補åã®åºç€ã圢æããäž»èŠãªååãæ±ºå®ãããŸããã
- ã·ã¹ãã ã³ã³ããŒãã³ããç°¡åã«å€æŽããŠæ°ããæ©èœã远å ããã«ã¯ãã·ã¹ãã ã³ã³ããŒãã³ããã»ãšãã©æ¥ç¶ããªãã§ãã ããã
- éåžžã«é·ãã©ã€ããµã€ã¯ã«-ç®æšã¯ãå¯èœãªéãæå€§ã®æéãããŸããŸãªèšèªã§ãµããŒãã§ããããŒã«ãäœæããããšã§ããã
- ãã€ã¯ããµãŒãã¹ã¢ãŒããã¯ãã£ãšã¢ããªã·ãã¯ã®äž¡æ¹ã®ã¢ããªã±ãŒã·ã§ã³ãéçºããæ©èœ
- éçºãããã¢ããªã±ãŒã·ã§ã³ã¯ããªã³ãã¬ãã¹ã§ããã¯ã©ãŠããœãªã¥ãŒã·ã§ã³ã§ãããä»»æã®ãã©ãããã©ãŒã ã«å±éã§ããå¿ èŠããããŸãããŸããã¯ã©ãŠãããªãã¬ãŒã¿ãŒã«äŸåããªãããã«ããå¿ èŠããããŸãã
- ããŒã«èªäœã®ååãç¶æããªãããéçºã§äœ¿çšãããããã°ã©ãã³ã°èšèªã®æå€§æ°ã®ãµããŒããããã³éä¿¡äžã«ç°ãªãèšèªã§èšè¿°ããããµãŒãã¹ã®çžäºã®äºææ§
Pip.Services Toolkitã¯ãäžè¬çãªããã°ã©ãã³ã°èšèªã䜿çšããŠãã€ã¯ããµãŒãã¹ããã³ã¢ããªã·ãã¯ã¢ããªã±ãŒã·ã§ã³ãéçºã§ããããã«ããåºç¯ãªããŒã«ã»ããã衚ããŠããŸããPip.Services Toolkitã¯ãå¿ èŠãªãã¹ãŠã®æ©èœãšããŒã¿æ§é ãæäœããããã®ããŒã«ãéçºããŸãããå¿ èŠãªãã®ããªãå Žåã¯ãéçºè ããå¿ èŠã«ãªãå¯èœæ§ããããèªåã§ç°¡åã«è¿œå ã§ããŸãã
Pip.Services Toolkitã¯çã®å€èšèªã§ãããæ¬¡ã®æŠå¿µã«æºæ ããŠããŸãã
ã³ãŒãã§ã®å¯Ÿç§°çãªå®è£
- , , . ,
- â ,
- â
- â ,
æ§é ãããèŠèŠçã«è¡šçŸããããã«ãããŒã«ãããã®æ§é å³ãèŠãŠã¿ãŸãããã
èšäºã®åé ã§è¿°ã¹ãããã«ãããŒã«ãããã¯å€èšèªå¯Ÿå¿ã§ããçŸåšã6ã€ã®ããã°ã©ãã³ã°èšèªã§å®è£ ãããŠããããã®äžã«ã¯äººæ°ã®ããïŒJavaãNode.jsãPythonã.Net CoreïŒãšéçºäžã®ïŒGoãDartïŒã®äž¡æ¹ããããŸããããã¯å³ã®ç°è²ã®ã¬ã€ã€ãŒã§ãã
ã芧ã®ãšãããããã¯ãç¬èªã®ã³ã³ããŒãã³ãïŒå³ã®ç·è²ã®ã¬ã€ã€ãŒïŒã®è¿ éãªéçºãç®çãšãããèšèªéã®ããªããã£ããšå ±éã®ãã³ãã¬ãŒããåããããã±ãŒãžã®ã»ããã«åºã¥ããŠããŸããããŒã«ãããã®äž»èŠã³ã³ããŒãã³ãã®ã©ã€ãã©ãªã¯ããããã«åºã¥ããŠå®è£ ãããŠããŸã
ãã§ã«åºæ¬ã³ã³ããŒãã³ãã«åºã¥ããŠããŠãŒã¶ãŒã³ã³ããŒãã³ããšã·ã¹ãã ã³ã³ããŒãã³ããå®è£ ãããŠããŸããããã¯2çªç®ã®ã°ãªãŒã³ã¬ã€ã€ãŒã§ãã
å³ã®éãå±€ã¯ãç¹å®ã®æ¹åã§äœæ¥ããããã®åºæ¬çãªã©ã€ãã©ãªã®ã»ããã§ããã³ã³ããã®å®è£ ïŒIoCïŒãããŒã¿ã®æäœãåæäº€æïŒRPCïŒãéåæäº€æïŒã¡ãã»ãŒãžã³ã°ïŒã§ãããããã¯ã¹ã¿ã³ãã¢ãã³ã³ã³ããŒãã³ããšããŠæ©èœããããšãã§ããŸãããç¹å®ã®ãã¯ãããžãŒã§æ©èœãã远å ã³ã³ããŒãã³ãã®ç¹å®ã®å®è£ ãæ§ç¯ããããã®åºæ¬çãªã€ã³ã¿ãŒãã§ã€ã¹ãšååãæäŸããŸããã¹ã¿ãã¯ã®äžçªäžã®å³ã«ç€ºãããã«ãäŸãšããŠãAWSãšAzureã®ã³ã³ãããŒãå®è£ ããMongoDbã§ããŒã¿æäœãå®è£ ããMemcachedãšRedisã§åæ£ãã£ãã·ã¥ãšããã¯ãå®è£ ããŸãã
Pip.ServicesããŒã«ãããã®ãã€ã¯ããµãŒãã¹-å éšã®å€èг
éçºã®å®è·µã¯ãå€ãã®ç°ãªãã¿ã€ãã®èšèšã®äžã§ãç·©ãçµåãããã³ã³ããŒãã³ããããã€ã¯ããµãŒãã¹ãæ§ç¯ããããšã奜ãŸããããšã瀺ããŠããŸããPip.Services Toolkitã¯ãéçºè ã®ãã€ã¯ããµãŒãã¹æ§é ã«å¶éã課ããŸããã
ãã¹ãŠã®éçºè ã¯èªåã®éãèªç±ã«éžã¶ããšãã§ããŸãããã ããã³ã³ããŒãã³ãã®èšèšã¯Pip.ServicesToolkitã§åŒ·åã«ãµããŒããããŠããŸãããã®ã¢ãããŒãã®ãããã§ãããã€ãã®ã¿ã¹ã¯ã解決ãããŸãã
- åã ã®ã³ã³ããŒãã³ãã®éçºãšãã¹ããç°¡çŽ åãããŸãã
- åã³ã³ããŒãã³ããæ®ãã®ã³ãŒãããåé¢ãããã¹ãã§ã®ãã®äŸåé¢ä¿ãåçŽãªã¢ãã¯ã«çœ®ãæããããšãã§ããŸãã
- ã³ãŒãã倿Žããã«ãæ§æãã¡ã€ã«å ã®ãã€ã¯ããµãŒãã¹ã³ã³ããŒãã³ãã®æ§æã倿Žããã ãã§ããã€ã¯ããµãŒãã¹ãç¹å®ã®ãã©ãããã©ãŒã ã«åæ§æããã€ã³ãã©ã¹ãã©ã¯ãã£ãµãŒãã¹ãéä¿¡ããŸãã¯ããŒã¿ããŒã¹ã眮ãæããããšãå¯èœã«ãªããŸãã
- . . , .
- , , :

- . :
- , ( ).
- , , ( ).
- ãã£ãã·ã³ã°ãã¢ãã¿ãªã³ã°ãæ§æãåæãªã©ã®è¿œå ã³ã³ããŒãã³ããååãšããŠããããã®ã³ã³ããŒãã³ãã¯æšæºã»ãããã远å ãããããŸããŸãªã€ã³ãã©ã¹ãã©ã¯ãã£ãµãŒãã¹ããã³ãã©ãããã©ãŒã ïŒç°è²ïŒãšã®çµ±åã«å¹ åºãéžæè¢ãæäŸããŸãã
- ã¯ã©ã€ã¢ã³ãã©ã€ãã©ãªãå®è£ ããŠããã€ã¯ããµãŒãã¹ã®äœ¿çšãç°¡çŽ åã§ããŸãããã€ã¯ããµãŒãã¹ãæäœããããã®ãŠãŒã¶ãŒãã¬ã³ããªãŒãªã€ã³ã¿ãŒãã§ã€ã¹ãæäŸããäœã¬ãã«ã®éä¿¡ã®è©³çްãé衚瀺ã«ããŸãïŒéïŒã
ãã€ã¯ããµãŒãã¹ãæ§ç¯ããPip.Services Toolkitã§ã³ã³ããŒãã³ããæ§æããã«ã¯ãæ§æãã¡ã€ã«ã䜿çšããŸãããã®ãããªæ§æã®äŸã次ã«ç€ºããŸã
ãconfig.yml
--- # Container descriptor - descriptor: "pip-services:context-info:default:default:1.0" name: "hello-world" description: "HelloWorld microservice" # Console logger - descriptor: "pip-services:logger:console:default:1.0" level: "trace" # Performance counter that post values to log - descriptor: "pip-services:counters:log:default:1.0" # Controller - descriptor: "hello-world:controller:default:default:1.0" default_name: "World" # Shared HTTP Endpoint - descriptor: "pip-services:endpoint:http:default:1.0" connection: protocol: http host: 0.0.0.0 port: 8080 # HTTP Service V1 - descriptor: "hello-world:service:http:default:1.0" # Heartbeat service - descriptor: "pip-services:heartbeat-service:http:default:1.0" # Status service - descriptor: "pip-services:status-service:http:default:1.0"
ãã€ã¯ããµãŒãã¹ãã©ãããããŠããã³ã³ããã¯ãèšè¿°åã«åºã¥ããŠããã¡ã¯ããªã䜿çšããŠãã®ãããªæ§æãèªã¿åããå¿ èŠãªã³ã³ããŒãã³ããäœæããæ§æãã©ã¡ãŒã¿ããããã«æž¡ããã³ã³ããŒãã³ããçžäºã«ãã€ã³ãããŠãã¢ã¯ãã£ããªããã»ã¹ãéå§ããŸãã
ãã®ã¢ãããŒãã«ãããçµ±åãµãŒãã¹ãèšèšããå®è¡å¯èœç°å¢ã§çŽæ¥ç°å¢å€æ°ã䜿çšããŠç¹å®ã®ã¿ã¹ã¯ã®ã埮調æŽããå®è¡ã§ããŸãã
ã³ãŒãã倿Žããã«ã¢ããªã¹ãããã€ã¯ããµãŒãã¹ã«ç§»è¡
ãããšã¯å¥ã«ããœãŒã¹ã³ãŒãã倿Žããã«ãã¢ããªã±ãŒã·ã§ã³ã§äœ¿çšãããã¢ãŒããã¯ãã£ã倿Žã§ããå¯èœæ§ãããããšã«æ³šæããŠãã ããããã®æ©äŒãäŸãæããŠèããŠã¿ãŸãããã
ã¯ã©ã€ã¢ã³ãããµãŒãã¹ãæäœããããã«äœ¿çšãããã¡ãµãŒãããããšããŸããããšãã°ãBluetoothããŒã³ã³ïŒããŒã³ã³ïŒãæäœããããžãã¯ãå®è£ ãããµãŒãã¹ã䜿çšããŸããã¢ããªã·ãã¯ã¢ããªã±ãŒã·ã§ã³ã¢ãŒãã§èµ·åãããšãæ§æãã¡ã€ã«ã«ã¯ãã³ã³ããŒãã³ãèšè¿°åãå«ã次ã®ã»ã¯ã·ã§ã³ãå«ãŸããŸãã
# Beacons components - descriptor: "pip-services-beacons:persistence:mongodb:default:*" - descriptor: "pip-services-beacons:controller:default:default:*" - descriptor: "pip-services-beacons:client:direct:default:*"
ãã®æ§æã¯ãå®éã«ã¯ã¢ããªã·ãã¯ã³ãŒãã®åœ¢åŒã§ãã¡ãµãŒãã®äžéšãšããŠããŒã³ã³ãµãŒãã¹ãäœæãããããã®éã®çžäºäœçšã¯ã次ã®å³ãããããããã«ãåäžã®ã³ã³ãããŒå ã§çŽæ¥ã¯ã©ã€ã¢ã³ããä»ããŠå®è¡ãããŸãã
ãã ããæ§æããã¹ããå°ã倿ŽãããšãããŒã³ã³ãµãŒãã¹ã¯å¥ã®ãã€ã¯ããµãŒãã¹ã«ãªãããã¡ãµãŒãã¯httpã¯ã©ã€ã¢ã³ããä»ããŠé£æºããŸãããããè¡ãã«ã¯ããã¡ãµãŒãæ§æã®ã³ã³ãããŒã©ãŒãšæ°žç¶æ§ã®ããã»ã¯ã·ã§ã³ãåé€ããã¯ã©ã€ã¢ã³ãã¿ã€ããçŽæ¥ããhttpã«å€æŽããŸã ãæ£ããåäœãããã«ã¯ãçŸåšåå¥ã«å®è¡ãããŠãããã€ã¯ããµãŒãã¹ããŒã³ã³ã®ã¢ãã¬ã¹ãšããŒããæå®ãããã¡ãµãŒããåèµ·åããŠæ°ããæ§æãèªã¿åãå¿ èŠããããŸãã ãŸããããŒã³ã³ã䜿çšããŠå¥ã®ãã€ã¯ããµãŒãã¹ãå®è¡ããå¿ èŠããããŸããããã«ã¯ãæ¬¡ã®æ§æã䜿çšã§ããŸãã
# Beacons components
- descriptor: "pip-services-beacons:client:http:default:*"
connection:
protocol: "http"
host: "any.where.com"
port: 8086
# Http Endpoint - descriptor: "pip-services:endpoint:http:default:*" root_path: "" connection: protocol: "http" host: "0.0.0.0" port: 8086 # Beacons API V1 - descriptor: "pip-services-beacons:service:http:default:1.0" # Hearbeat service - descriptor: "pip-services:heartbeat-service:http:default:1.0" # Status service - descriptor: "pip-services:status-service:http:default:1.0"
ã¢ãŒããã¯ãã£ã®èгç¹ããã¯ã次ã®ããã«ãªããŸãã
ã芧ã®ãšããããã®ããã«ããŠãå±éã«å€ãã®ãªãœãŒã¹ãè²»ããããšãªããæåã«ã¢ããªã¹ã®åœ¢åŒã§ã¢ããªã±ãŒã·ã§ã³ãäœæã§ããŸãããã¹ã±ãŒãªã³ã°ãå¿ èŠã«ãªããšããã«ãæ§æãç°¡åã«å€æŽããå¿ èŠããããŸãããã€ã¯ããµãŒãã¹ãžã®ç§»è¡ã¯ãPip.ServicesToolkitã®äž»ãªå©ç¹ã®1ã€ã§ãã
Pip.Servicesãããžã§ã¯ãããã®è¿œå ããŒã«
Pip.Servicesã«ã¯ãPip.ServicesToolkitã ããå«ãŸããŠããããã§ã¯ãããŸãããç§ãã¡ã®äœæ¥ã®éçšã§ããã€ã¯ããµãŒãã¹ã®éçºã«äŸ¿å©ãªããã€ãã®è¿œå ããŒã«ãéçºããŸããã-
æ¢è£œã®ãã€ã¯ããµãŒãã¹ã®ã©ã€ãã©ãª-ããã«äœ¿çšã§ãããã€ã¯ããµãŒãã¹ã®ã«ã¿ãã°ã6ã€ã®ã«ããŽãªã«åé¡ãããŠããŸãã
- â . , , , ..
- â , , ,
- â ,
- â , , .
- â , ,
- â , , ;
- ãã³ãããŒã¯ã¯ãéçºãããã¢ããªã±ãŒã·ã§ã³ãšãã€ã¯ããµãŒãã¹ã®ããã©ãŒãã³ã¹ããã¹ãããããã®äžé£ã®ãŠãŒãã£ãªãã£ã§ãã
-ãã³ãã¬ãŒãã©ã€ãã©ãª-ãã€ã¯ããµãŒãã¹éçºçšã®ãã³ãã¬ãŒããã¯ãŒã¯ã¹ããŒã¹ã®ã«ã¹ã¿ãã€ãºãCI / CDãã³ãã¬ãŒãããã¡ãµãŒããã³ãã¬ãŒããªã©ããã³ãã¬ãŒããå«ãããã€ãã®ã«ããŽãªãå«ãŸããŠããŸãã--PowerShell SeleniumWebDriver
- PowerShellããSeleniumãæäœããããã®éçºããããã©ã€ããŒã
ãããã®ããŒã«ã¯ãã¹ãŠãPip.ServicesWebãµã€ãã§å ¥æã§ããŸãã
çµè«
èšäºã®æåŸã«ãPip.Services Toolkitã¯ãããŸããŸãªããã°ã©ãã³ã°èšèªã䜿çšãããã€ã¯ããµãŒãã¹ã·ã¹ãã ã®éçºãç°¡çŽ åããããŸããŸãªããŒã«ã«ããã³ã¯ã©ãŠããã©ãããã©ãŒã ã§ã®å±éãæäŸãããã¿ãŒã³ãšã³ã³ããŒãã³ãã®ã»ããã§ããããšã远å ããããšæããŸãããã®ã»ããã«ã¯ãããŒã¿ã®éä¿¡ãšåŠçãããŒã¿ããŒã¹ã®æäœãããŸããŸãªåæããã³éåæãããã³ã«ã䜿çšããæ å ±ã®è»¢éãç£èŠæ©èœããšã©ãŒåŠçãªã©ã®äžè¬çãªæ©èœãå®è£ ããççµåã³ã³ããŒãã³ãã䜿çšããŠãé«åºŠã«ã«ã¹ã¿ãã€ãºå¯èœãªãã€ã¯ããµãŒãã¹ã®äœæã容æã«ãããã¿ãŒã³ãå«ãŸããŠããŸããåæã«ãPip.Services Toolkitã¯ç°¡åã«æ¡åŒµã§ããç¶æ¿ã§ã¯ãªãæ§æã«åºã¥ããèšèšã®ãããã§ãä»ã®ã©ã€ãã©ãªããã¬ãŒã ã¯ãŒã¯ãšå ±åã§ããŸãã
äžè¬çãªååãšæ§é ãããã³å®è£ ã®å¯Ÿç§°æ§ã«ãããéçºè ã¯æçæéã§1ã€ã®èšèªããå¥ã®èšèªã«ç°¡åã«åãæ¿ããããšãã§ããŸãããŸããçžäºéçšæ§ã«ãããããŸããŸãªèšèªã§èšè¿°ããããã€ã¯ããµãŒãã¹ã®å®å šãªäºææ§ãããã«æäŸãããŸãã
ã©ã€ãã©ãªå ã®ãã¹ãŠã®ãã€ã¯ããµãŒãã¹ã¯ãå®éã®ã·ã¹ãã ã§ãã¹ãããã³äœ¿çšãããŠããŸãããããžã§ã¯ãã§Pip.ServicesLibraryã䜿çšãããããã§ãããã¯ãšã³ãã®éçºæéãæå€§30ïŒ ççž®ããããšãã§ããŸããã
Pip.Servicesã¯æŽ»çºã«éçºãããŠãããã»ãŒæ¯æãæ°ããããŒã«ãšãã€ã¯ããµãŒãã¹ã远å ãŸãã¯æ¡åŒµãããŠããŸãã
å¿ èŠãªæ å ±ã®ã»ãšãã©ã¯ãã§ã«ãµã€ãã«ãããŸãããç§ãã¡ã¯ãŸã ç©æ¥µçã«æ°ããè³æã§ãããè£è¶³ããããã«åãçµãã§ããŸãã
2020幎11æã®æç¹ã§ããã®ããŒã«ãããã«åºã¥ããŠã1,000ãè¶ ãããã€ã¯ããµãŒãã¹ããé«åºŠãªä¿¡é Œæ§ãé«ãéçºé床ãããã³çµ±åã®å®¹æãã§å®è£ ãããŠããŸãããã®çµæãå瀟ã®ãªãŒããŒãã¡ã¯ãã¢ãŒããã¯ãã£ã®æåãããœãªã¥ãŒã·ã§ã³ã瀟äŒãšå ±æããããå€ãã®çµéšè±å¯ãªéçºè ã®åªåã«ãã£ãŠãããžã§ã¯ãã®ãããªãéçºã確å®ã«ããããã«ã補åãå®å šã«ãªãŒãã³ãœãŒã¹ã¹ããŒã¿ã¹ã«ç§»è¡ããããšã決å®ããŸããã
ãã®èšäºã¯æŠèŠã®ã¿ãç®çãšããŠãããå®è£ ã®è©³çްãªäŸã¯ãããŸããã®ã§ãããŸã蹎ããããªãã§ãã ããã以äžã®åºçç©ã§ã¯ããã®ããŒã«ãããã䜿çšããŠæ©èœãããã€ã¯ããµãŒãã¹ãå®è£ ããæ¹æ³ãçè§£ããããšããŸãã
ãã®ããŒã«ãããã«ã€ããŠè³ªåãããå Žåã¯ãã³ã¡ã³ããŸãã¯åœç€Ÿã®Webãµã€ãã«ç€ºãããŠããéä¿¡ãã£ãã«ãéããŠè³ªåããŠãã ããã確å®ã«åçããŸãã
ãªã³ã¯ïŒwww.pipservices.org