تقدم هذه المقالة Spring Cloud - احتياطي طريقة واحدة باستخدام Hystrix ، ومشاركتها معك ، على النحو التالي:
1. انضم إلى تبعيات Hystrix
<Rependency> <roupiD> org.springframework.cloud </groupId> <intifactid> spring-cloud-starter-hystrix </shintifactid> </premed>
2. كتابة وحدة التحكم
حزمة com.chhliu.springboot.restful.controller ؛ استيراد org.springframework.beans.factory.annotation.autowired ؛ استيراد org.springframework.web.bind.annotation.getMapping ؛ استيراد org.springframework.web.bind.annotation.pathvariable ؛ استيراد org.springframework.web.bind.annotation.restController ؛ استيراد com.chhliu.springboot.restful.feignclient.userFeignClient ؛ استيراد com.chhliu.springboot.restful.vo.user ؛ استيراد com.netflix.hystrix.contrib.javanica.annotation.hystrixCommand ؛ RestController الفئة العامة RestTemplateControllerHyStrixCommand {Auutowired private userfeignclient client ؛ // استخدم Feign لاستهلاك Service Service GetMapping ("/get/{id}") hystrixCommand (stropbackmethod = "findByidFallback") // استخدم التعليق التوضيحي HystrixCommand لتحديد طريقة العودة إلى عوامل FrapplackMethod publicididiid (cathvariable id) } // الكتابة فوق الطريقة المحددة في عابرة. لاحظ أن قيمة إرجاع هذه الطريقة يجب أن تكون متسقة مع الطريقة الأصلية للمستخدم العام FindByidFallBack (معرف طويل) {user u = new user () ؛ U.SetName ("Zhangsan") ؛ U.SetUserName ("chhliu") ؛ U.Setid (9L) ؛ أعدك ؛ }}3. أضف دعم Hystrix إلى فئة بدء التشغيل
enableCircuitbreaker
4. إضافة ملفات التكوين
server.port: 7904 # اسم تطبيق خدمة التمهيد الربيع المسجل في خادم Eureka هو spring.application.name = springboot-rest-feign-hystrix eureka.instance.prefer-ip-address = true # عنوان خدمة تسجيل خادم eureka IS eureka.client.service-url.defaultzone = http: // chhliu: chhliu123456@localhost: 8764/eureka springboot-h2.ribbon.nfloadbalancerruleclassname = com.netflix.loadbalancer.retryrule hystrix.command.default.execution.isolation.Thread.TimeOutInmillisEconds: 1 #Test Hystrix Effect ، يتم تعيين وقت المهلة على 1 مللي ثانية هنا
خامسا الاختبار
أدخل المتصفح: http: // localhost: 7904/get/2
نتائج الاختبار كما يلي:
{"id": 9 ، "username": "chhliu" ، "name": "Zhangsan" ، "Age: Null ،
من نتائج الاختبار أعلاه ، يمكننا أن نرى ذلك نظرًا لأن مهلة الاتصال ، ندخل مباشرة طريقة الاحتياط.
ما سبق هو كل محتوى هذه المقالة. آمل أن يكون ذلك مفيدًا لتعلم الجميع وآمل أن يدعم الجميع wulin.com أكثر.