royee

Results 31 comments of royee

![](https://camo.githubusercontent.com/e8b1f7cb34560b60791d94000727a934b5cba8e1/687474703a2f2f7777312e73696e61696d672e636e2f6c617267652f6136363063616232677931666379686d766f3232326a3230633830633837346e)

![](https://user-images.githubusercontent.com/6896562/41697418-3ef2c7f2-754b-11e8-9d26-c56519a8f663.png)

``` 5HMBH3TMNB-eyJsaWNlbnNlSWQiOiI1SE1CSDNUTU5CIiwibGljZW5zZWVOYW1lIjoiZGUgZGUiLCJhc3NpZ25lZU5hbWUiOiIiLCJhc3NpZ25lZUVtYWlsIjoiIiwibGljZW5zZVJlc3RyaWN0aW9uIjoiRm9yIGVkdWNhdGlvbmFsIHVzZSBvbmx5IiwiY2hlY2tDb25jdXJyZW50VXNlIjpmYWxzZSwicHJvZHVjdHMiOlt7ImNvZGUiOiJJSSIsInBhaWRVcFRvIjoiMjAxOS0wNi0yMyJ9LHsiY29kZSI6IlJTMCIsInBhaWRVcFRvIjoiMjAxOS0wNi0yMyJ9LHsiY29kZSI6IldTIiwicGFpZFVwVG8iOiIyMDE5LTA2LTIzIn0seyJjb2RlIjoiUkQiLCJwYWlkVXBUbyI6IjIwMTktMDYtMjMifSx7ImNvZGUiOiJSQyIsInBhaWRVcFRvIjoiMjAxOS0wNi0yMyJ9LHsiY29kZSI6IkRDIiwicGFpZFVwVG8iOiIyMDE5LTA2LTIzIn0seyJjb2RlIjoiREIiLCJwYWlkVXBUbyI6IjIwMTktMDYtMjMifSx7ImNvZGUiOiJSTSIsInBhaWRVcFRvIjoiMjAxOS0wNi0yMyJ9LHsiY29kZSI6IkRNIiwicGFpZFVwVG8iOiIyMDE5LTA2LTIzIn0seyJjb2RlIjoiQUMiLCJwYWlkVXBUbyI6IjIwMTktMDYtMjMifSx7ImNvZGUiOiJEUE4iLCJwYWlkVXBUbyI6IjIwMTktMDYtMjMifSx7ImNvZGUiOiJHTyIsInBhaWRVcFRvIjoiMjAxOS0wNi0yMyJ9LHsiY29kZSI6IlBTIiwicGFpZFVwVG8iOiIyMDE5LTA2LTIzIn0seyJjb2RlIjoiQ0wiLCJwYWlkVXBUbyI6IjIwMTktMDYtMjMifSx7ImNvZGUiOiJQQyIsInBhaWRVcFRvIjoiMjAxOS0wNi0yMyJ9LHsiY29kZSI6IlJTVSIsInBhaWRVcFRvIjoiMjAxOS0wNi0yMyJ9XSwiaGFzaCI6Ijk0MDEwNTkvMCIsImdyYWNlUGVyaW9kRGF5cyI6MCwiYXV0b1Byb2xvbmdhdGVkIjpmYWxzZSwiaXNBdXRvUHJvbG9uZ2F0ZWQiOmZhbHNlfQ==-bxO8rTTyr3M7eZ2vDLNED2oFAS+YVV9ql2RvEfJY6FyXPTmtO2I5XpEs9AoYVK5VX+NF7GD41LvCwONzvL69j1fDjVGcU1udj00srdHvuCMnPk1tsiJlnZ2wzmE+AVWKNbMMkzSphlxov5czEzRKG3lMPZ8ffz66+doKgcnef1y5owYdcm4qOCVGtBraBgDPNNM//BUTiCMu51J9B80YFvD2bDmw4pDYl2sorR/530+5Qc4Qrfeurz0YllUD7MEVzNKYh9hSLgWGk4GinB50qifwcqPhI6EF5TGD4oMHEdfCXom0NfO9P8fWwKpGFhfZ4XJml7k3EIAEzYFnau4QJw==-MIIEPjCCAiagAwIBAgIBBTANBgkqhkiG9w0BAQsFADAYMRYwFAYDVQQDDA1KZXRQcm9maWxlIENBMB4XDTE1MTEwMjA4MjE0OFoXDTE4MTEwMTA4MjE0OFowETEPMA0GA1UEAwwGcHJvZDN5MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAxcQkq+zdxlR2mmRYBPzGbUNdMN6OaXiXzxIWtMEkrJMO/5oUfQJbLLuMSMK0QHFmaI37WShyxZcfRCidwXjot4zmNBKnlyHodDij/78TmVqFl8nOeD5+07B8VEaIu7c3E1N+e1doC6wht4I4+IEmtsPAdoaj5WCQVQbrI8KeT8M9VcBIWX7fD0fhexfg3ZRt0xqwMcXGNp3DdJHiO0rCdU+Itv7EmtnSVq9jBG1usMSFvMowR25mju2JcPFp1+I4ZI+FqgR8gyG8oiNDyNEoAbsR3lOpI7grUYSvkB/xVy/VoklPCK2h0f0GJxFjnye8NT1PAywoyl7RmiAVRE/EKwIDAQABo4GZMIGWMAkGA1UdEwQCMAAwHQYDVR0OBBYEFGEpG9oZGcfLMGNBkY7SgHiMGgTcMEgGA1UdIwRBMD+AFKOetkhnQhI2Qb1t4Lm0oFKLl/GzoRykGjAYMRYwFAYDVQQDDA1KZXRQcm9maWxlIENBggkA0myxg7KDeeEwEwYDVR0lBAwwCgYIKwYBBQUHAwEwCwYDVR0PBAQDAgWgMA0GCSqGSIb3DQEBCwUAA4ICAQC9WZuYgQedSuOc5TOUSrRigMw4/+wuC5EtZBfvdl4HT/8vzMW/oUlIP4YCvA0XKyBaCJ2iX+ZCDKoPfiYXiaSiH+HxAPV6J79vvouxKrWg2XV6ShFtPLP+0gPdGq3x9R3+kJbmAm8w+FOdlWqAfJrLvpzMGNeDU14YGXiZ9bVzmIQbwrBA+c/F4tlK/DV07dsNExihqFoibnqDiVNTGombaU2dDup2gwKdL81ua8EIcGNExHe82kjF4zwfadHk3bQVvbfdAwxcDy4xBjs3L4raPLU3yenSzr/OEur1+jfOxnQSmEcMXKXgrAQ9U55gwjcOFKrgOxEdek/Sk1VfOjvS+nuM4eyEruFMfaZHzoQiuw4IqgGc45ohFH0UUyjYcuFxxDSU9lMCv8qdHKm+wnPRb0l9l5vXsCBDuhAGYD6ss+Ga+aDY6f/qXZuUCEUOH3QUNbbCUlviSz6+GiRnt1kA9N2Qachl+2yBfaqUqr8h7Z2gsx5LcIf5kYNsqJ0GavXTVyWh7PYiKX4bs354ZQLUwwa/cG++2+wNWP+HtBhVxMRNTdVhSm38AknZlD+PTAsWGu9GyLmhti2EnVwGybSD2Dxmhxk3IPCkhKAK+pl0eWYGZWG3tJ9mZ7SowcXLWDFAk0lRJnKGFMTggrWjV8GYpw5bq23VmIqqDLgkNzuoog== ```

``` https://github.com/pengzhile/jetbrains-agent ```

列 | 描述 -- | -- table | 显示这一行的数据是关于哪张表的。 type | 这是重要的列,显示连接使用了何种类型。从最好到最差的连接类型为 const、eq_ref、ref、range、index和ALL。 possible_keys | 显示可能应用在这张表中的索引。如果为空,没有可能的索引。可以为相关的域从WHERE语句中选择一个合适的语句。 key | 实际使用的索引。如果为NULL,则没有使用索引。很少的情况下,MySQL会选择优化不足的索引。这种情况下,可以在SELECT语句中使用USE INDEX(indexname) 来强制使用一个索引或者用IGNORE INDEX(indexname)来强制MySQL忽略索引。 key_len | 使用的索引的长度。在不损失精确性的情况下,长度越短越好。 ref | 显示索引的哪一列被使用了,如果可能的话,是一个常数。 rows |...

type:类型 system:表中只有一条数据。 const:主键或唯一索引的等值查询扫描。 eq_ref:多表的 join 查询,表示对于前表的每一个结果,都只能匹配到后表的一行结果。 ref:多表的 join 查询,针对于非唯一或非主键索引,或者是使用了 最左前缀规则索引的查询。 range:用索引范围查询。 index:全索引扫描。 all:全表扫描。 性能比较:ALL < index < range ~ index_merge < ref < eq_ref < const < system possible_keys:此次查询中可能选用的索引。 key:此次查询中确切使用到的索引。...

使用Kubernetes的主要好处之一是它具有管理和维护集群中容器的能力,几乎可以提供服务零停机时间的保障。在创建一个Pod资源后,Kubernetes会为它选择worker节点,然后将其调度到节点上运行Pod里的容器。Kubernetes强大的功能可使应用程序的容器保持连续运行,还可以根据需求的增长自动扩展系统。除此之外在Pod或容器出现故障时Kubernetes还可以让系统实现"自愈"。在本文中,我们将介绍如何使用Kubernetes内置的livenessProbe和readinessProbe来管理和控制应用程序的运行状况。 Kubernetes自身的系统修复能力有一部分是需要依托Pod的重启策略的, 重启策略也叫restartPolicy。它是Pod 的Spec部分的一个标准字段(pod.spec.restartPolicy),默认值是Always,即:任何时候这个容器发生了异常,它一定会被重新创建。 可以通过设置 restartPolicy,改变 Pod 的恢复策略。除了 Always,它还有 OnFailure 和 Never 两种情况。 Always:在任何情况下,只要容器不在运行状态,就自动重启容器; OnFailure: 只在容器 异常时才自动重启容器; Never: 从来不重启容器。 在实际使用时,我们需要根据应用运行的特性,合理设置这三种恢复策略。 对于包含多个容器的 Pod,只有它里面所有的容器都进入异常状态后,Pod 才会进入 Failed 状态。在此之前,Pod 都是 Running 状态。此时,Pod 的 READY...

将Pod调度到某个节点后,该节点上的Kubelet将运行其中的容器,并在Pod的生命周期内保持它们的运行。如果容器的主进程崩溃,kubelet将重新启动容器。但是,如果容器内的应用程序抛出错误导致其不断重启,则Kubernetes可以通过使用正确的诊断程序并遵循Pod的重启策略来对其进行修复。 Kubernetes可以对两种健康检查做出应对: Liveness:活性检查,kubelet使用活性探针(livenessProbe)的返回状态作为重新启动容器的依据。一个Liveness探针用于在应用运行时检测容器的问题。容器进入此状态后,Pod所在节点的kubelet可以通过Pod策略来重启容器。 Readiness:就绪检查,这种类型的探测(readinessProbe)用于检测容器是否准备好接受流量。你可以使用这种探针来管理哪些Pod会被用作服务的后端。如果Pod尚未准备就绪,则将其从服务的后端列表中删除。 Kubernetes把放在Pod里的健康检查处理程序叫做探针(Probe),比喻成医学手术上探测病变的探针,还是很形象的。