如何避免核心代码资源泄漏和如何提高开发效率(上)

简介: 如何避免核心代码资源泄漏和如何提高开发效率(上)

前言


公司的Python项目进度有些慢 
突然想要了解下是什么原因导致的?
因为我觉着python算法复杂是复杂但好多都是现成的
(去网络上都可以找到实现好的算法代码)
所以不需要花费太多的时间在算法从0到1的实现上
(小公司在业务快速发展时期 用好现有算法即可 
从0到1研发算法 没有这个技术实力和资本 也没有必要)
剩下的就是简单的业务逻辑了
比如从哪里取数据 把结果数据存储到哪里

小白如何写Python算法-计算模型稳定性评估指标PSI


这篇文章也可以说明 一些代码实现都是开源的资源 只需要了解算法原理会用即可

那为什么python团队效率那么低呢 我体验了下python的开发流程 我找到了原因


本文不涉及公司任何机密信息

先简述下如何在内网环境开发 在描述整个流程的过程中 你也会发现问题所在


远程桌面


python算法代码属于公司的核心资源
所以都是在内网环境开发的
通过远程桌面连接到远程windows电脑
该windows电脑属于内网环境 不能访问外网资源

Mac远程桌面工具


Microsoft Remote Desktop Beta

链接:https://pan.baidu.com/s/13TCHD_dhVB0tTi5lk4mtSg  
密码:v4f6


image.png

image.png


这是内网环境 不能访问外网


把自己本地电脑上文件上传到远程windos桌面


image.png


先把文件通过web页面上传到ftp服务器

a、一个上传文件的页面
b、传给接口(java或python或其他语言开发)
该接口所在的服务暴露一个外网访问端口
该外网端口映射到内网服务端口
c、接口逻辑是上传到内网环境的ftp文件服务器

在windows桌面上连接内网ftp服务器下载该文件

xftp

image.png

这样就可以通过页面上传外网资源到内网环境了


内网GIT代码库


在内网服务器上安装GIT代码服务上
在内网开发的代码资源上传到内网的GIT服务上
这样可以确保内网代码不会拿到外网泄漏出去

需要在内网远程windows电脑上安装git工具 连接git服务下载代码到windows电脑上


通过编译器将代码上传到内网开发服务器linux环境编译并启动


普遍使用:
python代码通过pycharm idea编译器开发
java 通过Inetllij idea开发

image.png


把刚从git服务上拉的最新代码导入pycharm编译器中

那接下来要考虑如何启动python服务了

image.png




相关文章
|
2月前
|
算法 测试技术 开发者
在Python开发中,性能优化和代码审查至关重要。性能优化通过改进代码结构和算法提高程序运行速度,减少资源消耗
在Python开发中,性能优化和代码审查至关重要。性能优化通过改进代码结构和算法提高程序运行速度,减少资源消耗;代码审查通过检查源代码发现潜在问题,提高代码质量和团队协作效率。本文介绍了一些实用的技巧和工具,帮助开发者提升开发效率。
51 3
|
3月前
|
监控 安全 算法
线程死循环确实是多线程编程中的一个常见问题,在编码阶段规避潜在风险
【10月更文挑战第12天】线程死循环确实是多线程编程中的一个常见问题,在编码阶段规避潜在风险
72 2
|
6月前
|
开发者
软件交付问题之有效地减少代码中的逻辑错误,如何解决
软件交付问题之有效地减少代码中的逻辑错误,如何解决
|
6月前
|
存储 安全 Java
开发与运维引用问题之JVM类加载过程如何解决
开发与运维引用问题之JVM类加载过程如何解决
37 0
|
6月前
|
存储
代码优化设计问题之当方法体只有一行时,独立存在的方法的必要性开始存疑问题如何解决
代码优化设计问题之当方法体只有一行时,独立存在的方法的必要性开始存疑问题如何解决
|
7月前
|
算法 Java 开发者
深入理解死锁的原因、表现形式以及解决方法,对于提高Java并发编程的效率和安全性具有重要意义
【6月更文挑战第10天】本文探讨了Java并发编程中的死锁问题,包括死锁的基本概念、产生原因和解决策略。死锁是因线程间争夺资源导致的互相等待现象,常由互斥、请求与保持、非剥夺和循环等待条件引起。常见死锁场景包括资源请求顺序不一致、循环等待等。解决死锁的方法包括避免嵌套锁、设置锁获取超时、规定锁顺序、检测与恢复死锁,以及使用高级并发工具。理解并防止死锁有助于提升Java并发编程的效率和系统稳定性。
425 0
|
8月前
|
缓存 Java Android开发
安卓开发中的内存泄漏分析与优化策略
【4月更文挑战第27天】 在移动应用开发领域,性能优化始终是提升用户体验的关键因素之一。特别是对于安卓平台,由于设备的硬件配置差异较大,良好的内存管理对于保证应用流畅运行尤为重要。本文将深入探讨安卓开发中常见的内存泄漏问题,并提供一系列检测和解决内存泄漏的实用策略。通过对工具的使用、代码实践以及系统架构设计的多维度分析,旨在帮助开发者有效避免和处理内存泄漏,确保应用性能稳定。
|
8月前
|
存储 算法 编译器
C++性能调优:从代码层面提升程序效率
本文探讨了C++程序性能调优的关键点:选择合适的数据结构和算法,例如用哈希表(如`std::unordered_map`)替换低效的数组或链表;减少不必要的内存分配和释放,利用智能指针和容器如`std::vector`自动管理内存;优化循环和条件语句,例如在循环外存储数组大小;利用编译器优化如`-O2`或`-O3`;以及使用性能分析工具如`gprof`、`callgrind`和`perf`识别并解决性能瓶颈。通过这些方法,可以有效提升C++程序的运行效率。
|
8月前
|
监控 安全
线程死循环是多线程应用程序开发过程中一个难以忽视的问题,它源于线程在执行过程中因逻辑错误或不可预见的竞争状态而陷入永久运行的状态,严重影响系统的稳定性和资源利用率。那么,如何精准定位并妥善处理线程死循环现象,并在编码阶段就规避潜在风险呢?谈谈你的看法~
避免线程死循环的关键策略包括使用同步机制(如锁和信号量)、减少共享可变状态、设置超时、利用监控工具、定期代码审查和测试、异常处理及设计简洁线程逻辑。通过这些方法,可降低竞态条件、死锁风险,提升程序稳定性和可靠性。
109 0
|
8月前
|
设计模式 缓存 安全
分析设计模式对Java应用性能的影响,并提供优化策略
【4月更文挑战第7天】本文分析了7种常见设计模式对Java应用性能的影响及优化策略:单例模式可采用双重检查锁定、枚举实现或对象池优化;工厂方法和抽象工厂模式可通过对象池和缓存减少对象创建开销;建造者模式应减少构建步骤,简化复杂对象;原型模式优化克隆方法或使用序列化提高复制效率;适配器模式尽量减少使用,或合并多个适配器;观察者模式限制观察者数量并使用异步通知。设计模式需根据应用场景谨慎选用,兼顾代码质量和性能。
66 0