`
san_yun
  • 浏览: 2651958 次
  • 来自: 杭州
文章分类
社区版块
存档分类
最新评论

jython load 高的分析

 
阅读更多
登录到s4发现load很高,cpu完全是被jython占用,发现启jstack主要被三种线程占用:
1. memcached
2. perf/models.py:30,next_blog_id(),prev_blog_id()这个地方绝对有性能问题导致mysql被lock。
{code}
at com.mysql.jdbc.util.ReadAheadInputStream.read(ReadAheadInputStream.java:189)
        - locked <0x0000000778151558> (a com.mysql.jdbc.util.ReadAheadInputStream)
        at django.db.models.query$py._result_iter$8(/duitang/dist/sys/tomcat/webapps/ROOT/WEB-INF/lib-python/Lib/site-packages/django/db/models/query.py:99)
{code}
3. 抛出的异常打印stack可能会非常耗时:
{code}
   java.lang.Thread.State: RUNNABLE
        at java.lang.Throwable.fillInStackTrace(Native Method)
        at java.lang.Throwable.fillInStackTrace(Throwable.java:782)
        - locked <0x000000074c3389a8> (a org.python.core.PyException)
{code}


{code}
        at django.db.models.query$py.call_function(/duitang/dist/sys/tomcat/webapps/ROOT/WEB-INF/lib-python/Lib/site-packages/django/db/models/query.py)
        at org.python.core.PyTableCode.call(PyTableCode.java:165)
        at org.python.core.PyGenerator.__iternext__(PyGenerator.java:149)
        at org.python.core.PyGenerator.__iternext__(PyGenerator.java:131)
        at perf.models$py.get_recs$1(/data1/duitang/dist/app/test/jython/duitang/../duitang/perf/models.py:30)
        at perf.models$py.call_function(/data1/duitang/dist/app/test/jython/duitang/../duitang/perf/models.py)
        at org.python.core.PyTableCode.call(PyTableCode.java:165)
        at org.python.core.PyBaseCode.call(PyBaseCode.java:166)
        at org.python.core.PyFunction.__call__(PyFunction.java:368)
        at message.models$py.fetch_pre_blog$66(/duitang/dist/sys/tomcat/webapps/ROOT/WEB-INF/lib-python/duitang/message/models.py:723)
        at message.models$py.call_function(/duitang/dist/sys/tomcat/webapps/ROOT/WEB-INF/lib-python/duitang/message/models.py)
        at org.python.core.PyTableCode.call(PyTableCode.java:165)
        at org.python.core.PyBaseCode.call(PyBaseCode.java:134)
        at org.python.core.PyFunction.__call__(PyFunction.java:347)
        at org.python.core.PyMethod.__call__(PyMethod.java:109)
        at message.models$py.get_prev_blog$65(/duitang/dist/sys/tomcat/webapps/ROOT/WEB-INF/lib-python/duitang/message/models.py:709)
        at message.models$py.call_function(/duitang/dist/sys/tomcat/webapps/ROOT/WEB-INF/lib-python/duitang/message/models.py)
        at org.python.core.PyTableCode.call(PyTableCode.java:165)
        at org.python.core.PyBaseCode.call(PyBaseCode.java:134)
        at org.python.core.PyFunction.__call__(PyFunction.java:347)
        at org.python.core.PyMethod.__call__(PyMethod.java:109)
        at message.models$py.prev_blog_id$64(/duitang/dist/sys/tomcat/webapps/ROOT/WEB-INF/lib-python/duitang/message/models.py:701)

{code}
分享到:
评论

相关推荐

    jython-standalone-2.7.0.zip

    标题 "jython-standalone-2.7.0.zip" 提供了我们正在处理的是一...使用Jython,用户可以创建自己的插件,这些插件可以执行自动化任务,如动态分析、漏洞检测、数据流跟踪等,极大地增强了Burp Suite的功能性和适应性。

    jython中文详细教程

    **Jython 中文详细教程** Jython是一种基于Python语言的解释器,它是针对Java平台设计的,能够直接运行在Java虚拟机(JVM)上。它不仅提供了Python的全部功能,还能够无缝集成Java类库,使得开发者可以利用Python的...

    jython各个版本下载地址

    ### Jython 各个版本下载地址解析 Jython 是一种Python的实现,它允许Python代码在Java平台上运行。本文将详细介绍Jython不同版本的下载地址及相关文件信息。 #### Jython 2.2 版本 - **发布日期**:2007年8月24...

    Jython教程

    **Jython教程** Jython是一种基于Python编程语言的开源实现,它完全兼容Python语法,并且在Java平台上运行。由IBM developerworks提供的Jython教程旨在帮助开发者理解和掌握如何在Java环境中利用Jython进行开发。 ...

    jython-standalone-2.7.0.jar

    这种交互性使得Java项目可以利用Python的高级数据结构和科学计算库,同时保持Java的高性能和企业级特性。 值得注意的是,Jython的性能相比CPython(官方的Python实现)可能会有所下降,因为它是解释执行而非编译...

    Jython简单配置和使用

    Jython 简单配置和使用 Jython 是一种完整的语言,而不是一个 Java 翻译器或仅仅是一个 Python 编译器,它是一个 Python 语言在 Java 中的完全实现。Jython 也有很多从 CPython 中继承的模块库。最有趣的事情是 ...

    jython简易教程

    2. 数据分析:借助Java的数据处理库,如Apache Commons Math,Jython可进行复杂的数据分析。 3. 自动化测试:利用Jython编写测试脚本,与Selenium等自动化测试工具结合,进行Web应用测试。 **七、学习资源** - ...

    Jython示例

    1. **语言融合**:Jython结合了Python的易用性和Java的高性能,使得开发人员可以在两个世界之间自由切换。 2. **可移植性**:因为Jython运行在JVM上,所以它具有Java的跨平台特性,能在任何支持JVM的系统上运行。 3....

    Burpsuite环境Jython安装方法1

    这种特性使得 Jython 成为在 Java 环境中进行混合编程的理想选择,尤其是在需要结合 Python 的易用性和 Java 的高性能时。 **Jython 安装步骤** 1. **下载 Jython Standalone**: 首先,你需要从 Maven 存储库...

    jython2.5-安装包

    例如,Jython 2.7及更高版本对Python 2.7的兼容性更好,而Jython 3.x则朝着Python 3系列的标准靠拢。 在使用这个安装包时,开发者需要注意其版本限制,特别是当需要使用新Python特性或特定库时。同时,为了获得最佳...

    jython安装和使用方法

    Jython 安装和使用方法 Jython 是一个基于 Java 语言的 Python 实现,它可以让 Python 语言运行在 Java 平台上。下面将详细介绍 Jython 的安装和使用方法。 安装 Jython 首先,需要从 Jython 官方网站下载 Jython...

    jython

    标题 "Jython" 提到的是一个与Python编程语言相关的开源项目——Jython。Jython是Python的一个实现,它允许Python代码在Java平台上运行。Jython将Python语言的灵活性和简洁性与Java平台的强大功能相结合,使得开发者...

    python&jython;

    Python 和 Jython 都是基于 Python 语言的实现,但它们之间存在一些关键差异。Python 是一种广泛使用的高级编程语言,以其简洁明了的语法和强大的功能而闻名,尤其在数据处理、网络编程和科学计算等领域。Jython,另...

    jython_installer-2.5.2

    Jython是一种完整的语言,而不是一个Java翻译器或仅仅是一个Python编译器,它是一个Python语言在Java中的完全实现。Jython也有很多从CPython中继承的模块库。最有趣的事情是Jython不像CPython或其他任何高级语言,它...

    jython串口控制方法介绍

    **Jython串口控制方法详解** 在Python编程中,串口通信是一种常见的方式,用于设备间的低速数据传输。而在Jython环境下,由于其与Java的兼容性,我们可以利用Java的串口通信API来实现这一功能。Jython是Python的一...

    jython介绍2

    特别关注了Jython如何处理Java线程,解释了如何在Jython程序中启动、管理和同步Java线程,这对于开发高并发应用程序至关重要。 ### 4. Jython中的调试技巧 #### 4.1 调试基础 文章提供了Jython中常用的调试工具和...

    jython学习文档

    这份文档主要介绍了两个核心概念:一个是可以与Jython对象映射的Java接口类,以及一个用于从Jython文件中获取Java对象、Jython对象和Jython函数对象的工厂方法类。 ### Jython与Java接口的映射 首先,我们关注到的...

    jython的用法及学习文档

    ### Jython的用法及学习文档 #### 一、引言 Jython 是一种能够运行在 Java 平台上的 Python 解释器,它允许开发者直接使用 Python 代码调用 Java API,同时也支持 Java 代码调用 Python 的功能。本文档旨在帮助...

    jython-installer27.jar

    这样,开发者可以在Java程序中动态地执行Python代码,或者使用Python库处理特定任务,如文本处理、数据分析等。 总结来说,"jython-installer27.jar"是连接Python和Java世界的重要桥梁,它使Python脚本能在Java环境...

Global site tag (gtag.js) - Google Analytics