为了解决四参数logistic曲线拟合回归方程在线计算问题,先后尝试了php和JavaScript,期中也应用了百度的文心一言和ChatGPT中文镜像查找答案,所编写的程序与专业软件分析的结果相差巨大。在期中调试过程中,接触到了python的scipy,刚好自己有python调试平台,就拿来试一试,结果发现计算结果基本吻合,而且代码简单明了。考虑到为了解决该算法花费了大量时间,而JavaScript和php没有类似库及代码,所以就先拿python来代替php和js的,先暂时了结最近的一桩心事。
考虑到要应用到在线环境,而我的python平台默认是window环境的,所以必须给python搭建web环境,并保持在线。这里选了python的flask框架,理由是它轻(轻量化,毕竟目的只是提供计算结果而不是web开发),服务器就用php环境所在的NAS好了,正版的群晖DSM,开工....
1、在DSN的“套件中心”中安装最新版的python3.11;
2、在DSM的“终端机和SNMP”中打开SSH功能,telnet可不开;同时在“用户和群组”的高级设置中确认“启动家目录服务”是否打勾;
3、适用ssh工具链接,使用管理员账号登录,并“sudo su”命令切换管理员模式,可以使用“ls”命令查看是否显示文件夹确认;
我的NAS无法使用putty登录,调整各种设置还是提示“Fatal Error expected key exchange group packet from server”,解决无果后采用window10自带的window PowerShell来连接
ssh admin@IP
4、先CD到home文件夹内的admin目录下,先安装pip,可参考下面两篇文章,我选用的叶小纨的离线安装方案。
wget https://bootstrap.pypa.io/get-pip.py
运行文件即可
python get-pip.py
5、修改pip的安装源 #将源更换为国内镜像
pip config set global.index-url https://mirrors.aliyun.com/pypi/simple/
6、使用pip安装flusk
pip install flask
7、在DSM系统操作系统中将编译好的使用web的python文件如web.py拷贝到admin目录下(也可以使用winscp等工具来ftp上传,但个人觉得图面化更方便)
8、在ssh界面下输入
python web.py
大功告成!
等等,在这种环境下, 关闭ssh界面就无法使用flask,web无法访问,这不是我们所要的。我们需要稳定的在线,能随时调用,所以必须让web。py在后台一直运行。
我采用nohup 方案
nohup python3 main.py &
nohup 是 no hang up 的缩写,就是不挂起的意思,不断地运行。3、最后一个 & ,代表该命令在后台执行。命令运行后会有提示,示例: [1] 1111 代表进程 1111 运行中。
查看后台的python程序,刚刚运行的程序状态为R
ps aux |grep python
关闭程序:
kill -9 pid
另外还需要实现开机启动功能,可参考
https://blog.sourismu.me/archives/93/
如果pip安装出现问题需要重新安装,可以尝试强制安装或升级
# 使用curl将文件另存为get-pip.py到本地
curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py
# 或者直接使用wget下载
wget https://bootstrap.pypa.io/get-pip.py
# 使用python强制重新安装pip
python get-pip.py --force-reinstall
参考:
https://blog.csdn.net/yushengheni/article/details/125503909
https://blog.ggrarea.cn/archives/42429.html
https://blog.csdn.net/scarificed/article/details/125542707
https://blog.csdn.net/qq_36848370/article/details/128456768
https://cutepig.net/archives/amp/4950
https://blog.csdn.net/xyq879372576/article/details/128825213
https://blog.csdn.net/zhulianseu/article/details/125047404
Comments | NOTHING