首先说明下环境问题,新旧服务器的迁移。代码在老服务器运行没有任何问题。环境都是PHP7.3,结果新的服务器上流量导过来以后,就报出了如下问题:

FastCGI sent in stderr: "PHP message: PHP Fatal error:  Invalid binding type in /base.inc.php on line 221

这个base.inc.php的第221行是什么东东呢?

221 }

额,这就有点诡异了。注释掉相关的方法后,报错信息又顺延到下一个花括号的结尾处了。这就神奇了。于是去百度谷歌了半天,并没有什么有用的资料,唯一一个提到的内容是说重新编译一下PHP。

https://stackoverflow.com/questions/3960323/why-dont-php-attributes-allow-functions

好吧,咱们就重新编译,可是编译完了一旦导流过来,马上就又挂掉。PHP-FPM正常运行,但不是所有的都会出问题,于是测试访问的时候是有的可以有的报错的。再深入对比发现,新服务器为了将来的扩展我们安装了swoole扩展。可能问题就出在这里,马上删掉swoole扩展,问题解决。

在swoole官网也并没有找到相关的信息。预估可能是代码中或者在PHP-FPM的配置中有和swoole不兼容的地方。所以在运行的过程中没有流量的时候正常测试不会有影响,但流量较大的情况下就会产生这种错误。有的时候很多代码看似运行没毛病,但真正的问题往往还是要在大流量高并发的场景下才能体现出来。

===============

关注公众号:【硬核项目经理】获取最新文章

添加微信/QQ好友:【xiaoyuezigonggong/149844827】免费得PHP、项目管理学习资料

知乎、公众号、抖音、头条搜索【硬核项目经理】

B站ID:482780532

记一次PHP的Invalid binding type问题的更多相关文章

  1. 发生了Post错误:错误代码40005,微信返回错误信息:invalid file type

    给客户部署 PxxCms, 使用群发功能发送图文的的时候提示: 发生了Post错误:错误代码40005,微信返回错误信息:invalid file type, 没学过php伤不起 ... Google ...

  2. Caused by: java.lang.RuntimeException: java.io.IOException: invalid constant type: 18

    工程启动的时候有报下面这个错误的,更新下工程的jar包依赖,然后在工程的pom文件里加上下面的jar包 Caused by: java.lang.RuntimeException: java.io.I ...

  3. 运行报错:java.io.IOException: invalid constant type: 15

    jdk,tomcat更新到jdk1.8与 tomcat8 运行报错:java.io.IOException: invalid constant type: 15 pom.xml文件中更新javassi ...

  4. mockito 异常Reason: java.io.IOException: invalid constant type: 18

    原因: mockito内部使用的javassit的版本不一致导致的,修改为一直版本即可. 异常内容: /Library/Java/JavaVirtualMachines/jdk1.8.0_162.jd ...

  5. Reflections - Java 8 - invalid constant type

    异常说明 使用Reflections扫描的时候出现could not create class file from, 原因是invalid constant type: 18 异常堆栈: org.re ...

  6. delphi 10.1 berlin datasnap提交clientdataset.delta报:invalid variant type conversion(类型转换错误)问题的解决

    delphi 10.1 berlin datasnap提交clientdataset.delta报:invalid variant type conversion(类型转换错误)问题的解决,需要打这个 ...

  7. java.lang.RuntimeException: java.io.IOException: invalid constant type: 15

    java.lang.RuntimeException: java.io.IOException: invalid constant type: 15 controller通过dubbo调用servic ...

  8. Invalid prop: type check failed for prop "XXX". Expected String, got Object.

    项目是Vue的,基于elementUI的后台管理系统. Invalid prop: type check failed for prop "total". Expected Str ...

  9. Invalid mime type "application nd.ms-excel; charset=utf-8;charset=utf-8": does not contain '/'

    org.springframework.web.util.NestedServletException: Request processing failed; nested exception is ...

随机推荐

  1. CodeReview of JDK Source Code

    jdk1.6.0_35/src.zip, only java package is reviewd(full package review caused a OutofMemory on java h ...

  2. MyBatis学习04(注解开发)

    7.使用注解开发 7.1 面向接口编程 根本原因 : 解耦 , 可拓展 , 提高复用 , 分层开发中 , 上层不用管具体的实现 , 大家都遵守共同的标准 , 使得开发变得容易 , 规范性更好 在一个面 ...

  3. Tag Helper 标签助手

    简介 标签助手是Razor 页面中自动生成HTML语句的可重用组件.标签助手对应特定的HTML标签,ASP.NET Core 包含大量与HTML标签对应的预定义标签助手. Razor页面中的标签助手作 ...

  4. 题解 [SDOI2010]所驼门王的宝藏

    传送门 保分题再度爆零,自闭ing×2 tarjan没写vis数组,点权算的也有点问题 这题情况3的连边有点麻烦,考场上想了暴力想了二分就是没想到可以直接拿map水过去 不过map果然贼慢,所以这也是 ...

  5. mysql删除大表更快的办法

    实现:巧用LINK(硬链接),原理:linux文件系统中硬链接相当于文件的入口,记录着ionde的信息.一个文件存在多个硬连接时,删除一个硬链接不会真正的删除ionde(存储文件的数据) # 创建硬链 ...

  6. javaWeb常用面试题

    JDBC JDBC访问数据库的基本步骤是什么? 加载驱动 通过DriverManager对象获取连接对象Connection 通过连接对象获取会话,有2种方式Statement.PreparedSta ...

  7. yield 关键字的认知

    namespace ConsoleDemo{ class Program { static void Main(string[] args) { string[] str = { "1&qu ...

  8. SpringCloud bootstrap.yml 和application.yml 加载原理

    Spring Cloud 官方文档:https://cloud.spring.io/spring-cloud-static/spring-cloud.html 一个Spring Cloud的操作是通过 ...

  9. C语言格式化输出语句

    %d:带符号十进制整数 : %c:单个字符: %s:字符串: %f:6位小数:float; %.2f表示小数点后精确到两位 %lf:6位小数:double;

  10. Flink的状态管理与恢复机制

    参考地址:https://www.cnblogs.com/airnew/p/9544683.html 问题一.什么是状态? 问题二.Flink状态类型有哪几种? 问题三.状态有什么作用? 问题四.如何 ...