精易论坛

标题: 易语言开发web容器的必要性,可行性讨论 [打印本页]

作者: 落款hMZ    时间: 2017-7-4 04:28
提示: 作者被禁止或删除 内容自动屏蔽
作者: 银河世纪    时间: 2017-7-4 08:16
前排瓜子花生
作者: 小牛大大    时间: 2017-7-4 08:19
虽然不懂,但是感觉很强大的样子
作者: Cand    时间: 2017-7-4 08:54
这文章,要顶
作者: 阿仁同学    时间: 2017-7-4 08:57
小牛大大 发表于 2017-7-4 08:19
虽然不懂,但是感觉很强大的样子

虽然不懂,但是感觉很强大的样子
作者: 易无忧    时间: 2017-7-4 09:08
不明觉厉,继续看看
作者: 黑猫よ__    时间: 2017-7-4 09:43
易语言对于内存的管理限制,使得你基本丧失了对其的控制权,这也就注定了其并不适合用于制作服务端软件(专业的),大量的临时性访问会带来非常高的内存更迭消耗,如果没有适当的内存管理措施,迟早会被内存碎片淹没,其次还有数据结构的局限性,易语言本身提供泛式数据存储容器可选的余地实在是过少(仅有数组),如何高效有序的管理数据也是比较头疼的一环。总得来说要想做容易,要想做得好就很难。
作者: xydk    时间: 2017-7-4 10:07
生意看人做,代码看什么人写。想法错了,但是万一作者是个乔布斯那样执着的人,也是可以成功的。
你要问问,易语言的作者屁股下面坐着能用于开发不干事埋头写代码的钱力,和他的毅力。
这2点才是最靠谱的。
作者: 落款hMZ    时间: 2017-7-4 10:23
提示: 作者被禁止或删除 内容自动屏蔽
作者: 落款hMZ    时间: 2017-7-4 10:28
提示: 作者被禁止或删除 内容自动屏蔽
作者: 黑猫よ__    时间: 2017-7-4 11:33
落款hMZ 发表于 2017-7-4 10:23
受教了,不过我有个疑问,如果利用易语言自身的内存管理呢?尽量使用易语言基本变量,让底层自己释放,这 ...

内存碎片一般是由于空闲的连续空间比要申请的空间小,导致这些小内存块不能被利用。产生内存碎片的方法很简单,举个例:  
    假设有一块一共有100个单位的连续空闲内存空间,范围是0~99。如果你从中申请一块内存,如10个单位,那么申请出来的内存块就为0~9区间。这时候你继续申请一块内存,比如说5个单位大,第二块得到的内存块就应该为10~14区间。  
    如果你把第一块内存块释放,然后再申请一块大于10个单位的内存块,比如说20个单位。因为刚被释放的内存块不能满足新的请求,所以只能从15开始分配出20个单位的内存块。  
    现在整个内存空间的状态是0~9空闲,10~14被占用,15~24被占用,25~99空闲。其中0~9就是一个内存碎片了。如果10~14一直被占用,而以后申请的空间都大于10个单位,那么0~9就永远用不上了,造成内存浪费。  
    如果你每次申请内存的大小,都比前一次释放的内村大小要小,那么就申请就总能成功。
=============================================================
         内存碎片多是看不见的,因为碎片同样是空闲的空间,这就会照成一种假象,系统仍然有大量空闲内存,但却无法使用,因为找不到足够分配的连续空间了。
===========================================================
         内存的申请释放是无处不在的,并非在调用API的时候,比如你要用文本型,字节集,数组,类,自定义数据类型等待都会需要申请内存,而这些地方的内存申请和释放都是由易语言自动给你完成的你没有控制权。

===========================================================
         内存管理,即要尽可能的合理使用内存,能够自动回收和处理碎片,使用智能对象,智能指针等等。

作者: jjsir    时间: 2017-7-4 11:36
看上去很强大,顶一顶
作者: 黑猫よ__    时间: 2017-7-4 11:37
理论上现在的内存容量确实也足够大,一般也不需要特别注意内存碎片问题,但如果将其层次提升到,每秒成千上万的访问量时,这种现象就会造成致命后果。
作者: 落款hMZ    时间: 2017-7-4 15:55
提示: 作者被禁止或删除 内容自动屏蔽
作者: 小白熊    时间: 2017-7-5 02:37
开发过,不知道你有没有听过60吗短xin平台,就是我开发的,
开始就是用易写的WEB服务器,但于上个月php版本开发完成换成了PHP,使用apache服务器centos系统,
我用易开发的WEB服务器稳定运行一年多,但后来我发现,不知道为什么我用易开发的服务器承受能力总是很不及apache那么强,可能是个人能力有限,导致设备增加浪费更多钱,于是我用php重写了,
那个服务器还是去年年初开发完成的,现在我觉得我可以开发出更好的WEB服务器了,但是不想重复造轮子, 并且加上易自身的缺点,还有我没有能力开发出能与apache相比的服务器,于是改用php咯
作者: 落款hMZ    时间: 2017-7-5 14:15
提示: 作者被禁止或删除 内容自动屏蔽
作者: 小白熊    时间: 2017-7-5 15:09
落款hMZ 发表于 2017-7-5 14:15
PHP如果用fastcgi模式的话,如果访问量大,如果每次访问服务器处理的时间长,就会产生大量php-cgi.exe进 ...

直接使用windows socket编程 IOCP模型,理论是支持大并发,但当时设计可能确实存在很多缺陷,但我现在已经不想再开发了,开发起来很蛋疼。
作者: 一曲离歌    时间: 2017-7-5 20:06
太难了,看不懂
作者: clocks    时间: 2017-7-7 21:44
开着web容器需要的知识储备  会整的我要死要死的
作者: 浩知宇    时间: 2017-8-12 22:19
mysql连接池??
作者: 最帅的胖虎    时间: 2018-4-26 01:51
小白熊 发表于 2017-7-5 02:37
开发过,不知道你有没有听过60吗短xin平台,就是我开发的,
开始就是用易写的WEB服务器,但于上个月php版 ...

于是django和易语言的结合版就来了




欢迎光临 精易论坛 (https://125.confly.eu.org/) Powered by Discuz! X3.4