当前位置: 首页 > news >正文

二手交易网站开发技术路线网站制作入门

二手交易网站开发技术路线,网站制作入门,化妆品备案查询网站,网站显示结算为什么 我们新JavaScript客户端应用程序会定期调用Grails后端的/health端点来确定离线状态。 事情开始变得“​​有趣”。 我们免费获得此端点#xff0c;因为Grails基于Spring Boot#xff0c;而Spring Boot带有一个名为Spring Boot Actuator的子项目。 这给了我们许多端点… 为什么 我们新JavaScript客户端应用程序会定期调用Grails后端的/health端点来确定离线状态。 事情开始变得“​​有趣”。 我们免费获得此端点因为Grails基于Spring Boot而Spring Boot带有一个名为Spring Boot Actuator的子项目。 这给了我们许多端点 使我们可以监视我们的应用程序并与之交互包括/health返回健康信息。 因此我们的JS客户端会检查它是否可以到达此/health端点每隔几秒钟执行一次以确定用户是在线还是离线。 没什么好想的以后我们可能会切换到仅使用Google主页之类的东西但是现在可以了。 健康检查失败 在localhost一切似乎总是正常的但是一旦我有了Jenkins管道最终在每次构建后将应用程序部署到我们的测试服务器我们就开始在那里验证应用程序事情变得很有趣。 通常情况下我们的通话情况非常好。 GET https://tst.example.com/health 200 () GET https://tst.example.com/health 200 () GET https://tst.example.com/health 200 () etc 每隔几秒钟我们就会在Chrome Inspector中看到错误累积的情况。 运行状况检查将失败并且HTTP状态代码503 Service unavailable长时间503 Service unavailable 。 GET https://tst.example.com/health 503 () GET https://tst.example.com/health 503 () GET https://tst.example.com/health 503 () etc 过了一会儿我们会再次接到好电话 GET https://tst.example.com/health 200 () GET https://tst.example.com/health 200 () etc 这些失败请求的响应只是说 {status:DOWN} 从设计上来说这不是很描述。 我当然没有写任何healh指标自己会这样为什么会“下降” 经验丰富的Spring Booters知道它将在类路径上获取任何运行状况指示器并且默认情况下带有一些。 实际使用的是一个谜因为默认情况下Spring Boot将该端点归类为“敏感”因此不会向外界公开太多信息。 我必须通过设置以下设置来使运行状况检查更加“有趣” endpoints.health.sensitive: false 现在手动调用端点即可显示竞争者 {status:DOWN,diskSpace:{status:DOWN,total:8579448832,free:20480,threshold:10485760},db:{status:UP,database:H2,hello:1} } “关闭”的一般状态是在本例中为2现在明确列出的自动配置的运行状况指示器的汇总结果。 当我看到以下内容时立即想到的是 我为什么还没有去除H2 嘿测试服务器上的磁盘空间已经用完了吗 H2数据库是所有Grails应用程序中的默认依赖项但是我们的应用程序不使用它-不在生产环境中也不用于测试-因此我们一定要从依赖项中删除它。 不用担心。 关于磁盘空间这是很好的DiskSpaceHealthIndicator 实际上是自动配置的指示器的一部分 告诉我事情不健康 。 它的默认阈值为10485760字节或10 MB 这是应该可用的最小磁盘空间。 而且……只有20 kb的可用空间 总共8场演出。 那是一个相当低的数字 在最初的0.7秒内我不相信健康指标您能想象吗 因此我通过SSH进入测试服务器以使用df实用程序检查可用磁盘空间 [Tedserver-01t ~]$ df -h Filesystem Size Used Avail Use% Mounted on /dev/mapper/rhel-root 8.0G 8.0G 20K 100% / ... 是的至少健康检查证明了事实的真相实际上只剩下一小块空间。 我将其转给配置此机器的IT同事进行调查。 似乎早先的实验已经存在一些Java堆转储占用了空间-有人告诉我将尽快将其删除。 最好也检查其他节点。 [Tedserver-02t ~]$ df -h Filesystem Size Used Avail Use% Mounted on /dev/mapper/rhel-root 8.0G 5.3G 2.8G 66% / 那里有足够的空间。 等一下 “其他节点” 是的我们有2个测试服务器01t和02t 。 那时我意识到我看到的行为是由于负载tst.example.com将请求转发到tst.example.com到server-01t或另一个server-02t 。 其中之一是磁盘空间不足这说明该服务器上Grails应用程序的运行状况指示器显示“关闭”从而导致HTTP 503。 当通过Chrome Inspector观察这些运行状况调用这些请求由我们的JS客户端不断发出时只剩下一个小问题为什么我们会有有时50倍“涨” 200 然后一连串的“跌” ” 503 然后看似随机 负载平衡器应使我们“固定”在JS客户端首次发出请求的那个节点上因为我们这样配置服务器。 如果负载tst.example.com将每个请求 发送给tst.example.com 轮流发送给服务器1或2我期望会有更多随机响应例如“ up” “ down” “ down” “ up” “ “向下” “向上” “向上” “向下” “向上” 。 好吧在我观察此行为的窗口期间似乎团队的其他成员仍在开发功能并…推向Jenkins选择的Git并将其部署到两台服务器上。 由于将应用程序串行重新部署到ech服务器因此负载平衡器“看到” 一台服务器上的应用程序不可用具有足够的磁盘空间 “ up” “ up” “ up” “ up” “ up” ” 在部署期间将流量重定向到另一台服务器 几乎没有磁盘空间 “关闭” “关闭” “关闭” … …不久之后便用新的WAR更新并再次在另一台服务器上结束请求具有足够的磁盘空间 “ up” “ up” “ up” “ up” “ up” 。 再花3个小时浪费我的生命。 包括一些时间在这里记下这些东西但我认为这是值得的 学过的知识 了解你的过程 知道有一个负载均衡器和多个节点以及它们如何工作会有所帮助。 而且CI服务器不断将新版本部署到正在调查的环境中并没有帮助。 但是完全知道这确实有助于澄清观察到的行为。 了解您的框架的“明智”默认设置。 如果使用Grails 3和Spring Boot请了解从类路径“自动配置”的内容 检查并确保它确实是您想要的 。 我们将摆脱H2并检查我们实际需要的运行状况指标可能会完全禁用自动配置。 我们清理了导致堆满的Java堆转储。 我们已经再次确认Unix团队将监视操作系统包括磁盘空间以便至少不再需要DiskSpaceHealthIndicator 。 翻译自: https://www.javacodegeeks.com/2017/10/why-is-springs-health-down-down-up-up-up-and-down-again.html
http://www.pierceye.com/news/143245/

相关文章:

  • 网站备案做优惠券第一营销网
  • 网站策划的基本过程全国大型网站建设
  • 个人外贸网站杭州微网站建设公司
  • wordpress皮肤下载站安徽建设工程信息网官方网站
  • 自己的电脑做服务器 并建网站asp sql网站安全性
  • 创新创业营销策略网站建设等信息系统开发计划
  • 安徽建设信息网站做胃镜多少钱天津津门网站I
  • jrs直播网站谁做的广告设计与制作专升本
  • 辽 icp 大连 网站建设个人网站做的类型
  • 做网站搞友情链接网站建设有哪些类型
  • 网站建设更新维护工作总结网站建设源文件
  • 公益网站 html 模板wordpress权限acl
  • 廊坊市网站建设企业网站设计特点
  • 网站建设论证方案传媒的域名做个什么网站
  • 成都建设网站企业电话国内信息图制作网站有哪些
  • 网站 图片切换wordpress永久免费
  • 自建社区网站网站建设全包设计
  • 广东装饰网站建设建设银行官网网站人事
  • 做网站设计赚钱吗保定模板建站平台
  • 找个免费网站这么难吗做球形全景的网站
  • c语言做网站后端深圳商业网站建设哪家好
  • wordpress小说网站模板下载地址网站建设中企动力推荐
  • 自己做网站网页剧中中国科技
  • 石家庄网站制作福州怎么提升网站打开速度
  • 网站分布郴州建设网站公司
  • 最有效的网站推广费用seo推广是什么意怿
  • 网站推广的基本方法是网站建设公司的介绍
  • 网站开发企业部门网站按抓取手机软件贵阳
  • 龙岗做网站公司icxun临夏州建设网站
  • 网站跳转到另外一个网站怎么做品牌推广部的职责