为什么要用dapr

    服务之间相互调用,需要写一套逻辑去维护
    1 服务发现、熔断、限流等
    2 dapr 实现了aws、redis、aliyun等服务,无需专注每个平台等开发

    dapr可以实现服务发现、熔断、限流等,可以专注于逻辑等开发

    服务器:2

    1. 编译生成main
    2. go build -o main main.go
    3. 把服务加入dapr
    4. dapr run --app-id Base --app-protocol grpc --app-port 5001 ./main &
    5. 开启远程调用服务
    6. dapr invoke --app-id Base --method test
    7. go build main.go && dapr run --app-id base-grpc --app-port 8080 --app-protocol grpc -- ./main -e fat
    8. go build main.go && dapr run --app-id base-http --app-port 8199 -- ./main -e dev

    http访问:

    1. curl http://localhost:38572/v1.0/invoke/Base/method/test

    dapr 组件配置

    1. cd /.dapr
    2. cd components/

    cd 组建
    查看组建

    https://www.yuque.com/docs/share/dfc142bf-3923-4062-801a-7d7efe00363f?# 《服务调用方式》
    https://www.yuque.com/docs/share/0a576a39-30c7-4bf6-9d54-6efb848c371f?# 《修改增加组件》
    https://www.yuque.com/docs/share/ae331b27-0b54-49b5-b85e-4cbc90490e2b?# 《发布订阅》

    git: http://gitlab.powershopin.top/shopywinwin/shopywinwin-base-dapr-gprc

    1. cd .dapr/components/
    2. cat pubsub.yaml
    3. cat statestore.yaml
    4. dapr run -app-id myapp --dapr-http-port 3500
    5. docker ps
    6. lsof -i:3500
    7. dapr run --app-id myapp --dapr-http-port 3500
    8. lsof -i:3500
    9. curl -X POST -H "Content-Type: application/json" -d '[{ "key": "name", "value": "Bruce Wayne"}]' http://localhost:3500/v1.0/state/statestore
    10. curl http://localhost:3500/v1.0/state/statestore/name
    11. ps aux|grep meili
    12. telnet shopywinwin-fat.cluster-cpb6ikgdz7ju.us-west-2.rds.amazonaws.com
    13. telnet shopywinwin-fat.cluster-cpb6ikgdz7ju.us-west-2.rds.amazonaws.com 3306
    14. dapr --help
    15. dapr componets
    16. dapr components
    17. dapr run --help
    18. curl -X POST http://localhost:3500/v1.0/publish/pubsub/deathStarStatus -H "Content-Type: application/json" -d '{"status": "completed"}'
    19. dapr publish --publish-app-id testpubsub --pubsub pubsub --topic deathStarStatus --data '{"status": "completed"}'
    20. lsof -i:3500
    21. curl -X POST -I http://localhost:3500/v1.0/publish/pubsub/deathStarStatus -H "Content-Type: application/json" -d '{"status": "completed"}'
    22. 479 curl -X POST -i http://localhost:3500/v1.0/publish/pubsub/deathStarStatus -H "Content-Type: application/json" -d '{"status": "completed"}'