NOP项目

为保持紧跟NOP更新,项目组坚持不改NOP源码。

以触发器,插件化开发为拓展模式

NOP自定义好的接口或完全独立的新拓展功能很容易插件化。

但部分功能要在NOP原项目上扩展修改在不改源码的要求下非常不易。

能改原码也就10分钟的事,但因为死守不改源码的规定,逻辑要更绕,更费精力,工作量更大,并且有很多风险。

为了扩展将部分逻辑写在Module里,Module严重影响性能。

功能开发前,个人的建议,是直接改某处,写日志,后期有更新再按日志改就可以,这种修改的量不会太大。

项目组不接受,因此提出可以改全局module来扩展。

之后爽歪歪,各种绕,起初只写一小部分逻辑,后期不断的添加。

今日报错。

因采用IIS全局模式。

module内有选择或cookie或session的操作一部

JS,CSS静态页面,api,也经过module,但此两类访问,无cookie session。

初版忘记加静态页验证,导致访问静态页时,因null异常,静太文件无法加载,导致页面样式和效果全丢失。

api更是诡异,api也曾因session报错,其本身无session属性,但古怪之处在于,如果以一个普通的账号登陆。再经module调用api,那么session是有值的。

当然,此session与api无关,除了由同一台终端访问。

api的session原本为空,不可调用

但若在同一终端以账号登陆,则session有值,且=此用户的session

现是全局正则检测是否为静态文件(损性能,且可能会有遗漏不说)

并验证是否有session。

JS和静态页面经Module的问题,后期可以配置nginx静态缓存来避免访问web服务(也就在走module前直接从nginx拿到)

插件开发,只需对自已的插件负责,即使错,也只是在小范围。

搞Module开发,一个未考虑到的小错就会出现大量错误,以致网站崩溃,费力且严重不讨好。

PS,公司项目新上,但尚无独立的测试环境。

千万不要在module里扩展较多逻辑,很容易引起项目异常。的更多相关文章

  1. 利用Visual Studio 2017的扩展开发(VSIX、ItemTemplate) 快速实现项目的半自动化搭建

    目录 0.引言 1.什么是Visual Studio项目模板 2.IWizad接口 3.通过Visual Studio扩展开发实现领域驱动开发 3.1 使用VSIX+ProjectTemplate创建 ...

  2. (转)硬盘分区备忘(主分区,扩展分区和逻辑分区)以及Linux硬盘分区工具parted 介绍

    场景:最近在学习Linux的基础知识,不可避免的设计到Linux的磁盘分区,以前做过总结,但是那种总结就是复制别人的文章,总结完就不想看第二遍,所以很容易就遗忘了!清楚明白的理解分区后,我就可以在自己 ...

  3. Linux主分区,扩展分区,逻辑分区的联系和区别

    主分区,也称为主磁盘分区,和扩展分区.逻辑分区一样,是一种分区类型.主分区中不能再划分其他类型的分区,因此每个主分区都相当于一个逻辑磁盘(在这一点上主分区和逻辑分区很相似,但主分区是直接在硬盘上划分的 ...

  4. [转]硬盘的那些事(主分区、扩展分区、逻辑分区、活动分区、系统分区、启动分区、引导扇区、MBR等)

    http://xu3stones.blog.163.com/blog/static/205957136201210309424303 主分区,扩展分区,逻辑分区,活动分区,系统分区,启动分区..... ...

  5. Scala IDEA for Eclipse里用maven来创建scala和java项目代码环境(图文详解)

    这篇博客 是在Scala IDEA for Eclipse里手动创建scala代码编写环境. Scala IDE for Eclipse的下载.安装和WordCount的初步使用(本地模式和集群模式) ...

  6. 控制面板里找不到“应用程序server”这个项目,Windows XP中金蝶安装时无“应用程序server”的解决的方法

    要注意先安装IIS,再安装VS2008. 我们会常常在控制面板里找不到"应用程序server"这个项目.我们须要依照以下的步骤来操作就会Ok. 1.下载IIS6,放置到D盘根文件夹 ...

  7. angularJS module里的'服务'

    首先,为了举栗子,先写好如下的模型,控制器,html: html: <!DOCTYPE html> <html ng-app="serviceApp"> & ...

  8. angular学习笔记(十五)-module里的'服务'

    本篇介绍angular中的模块:module 在笔记(二)http://www.cnblogs.com/liulangmao/p/3711047.html里已经讲到过模块,这篇主要讲模块的 '服务' ...

  9. Python如何在子类里扩展父类的property?

    <python cookbook>8.8节讨论子类扩展property时,一开始都晕了,思考了半天才勉强弄懂一点,赶快记下来.废话不多说,先上代码: class Person: def _ ...

随机推荐

  1. The flower(寻找出现m次以上,长度为k的子串)

    链接:https://ac.nowcoder.com/acm/contest/3665/B来源:牛客网 题目描述 Every problem maker has a flower in their h ...

  2. 产品对话 | 愿云原生不再只有Kubernete

    从2013年,云原生(Cloud Native)的概念由 Pivotal 的 MattStine 首次提出,到现在,其技术细节不断得到社区的完善.云原生逐渐演变出包括 DevOps.持续交付.微服务. ...

  3. 1.Redis简介/配置文件

    redis简介 redis使用入门 redis安装 http://www.runoob.com/redis/redis-install.html [root@yz---- bin]# ll total ...

  4. ccf201403-3 记录一个神tmwa了的代码 莫非我没看懂题。。。

    #include <string.h> #include<cstdio> #include<stdio.h> #include <iostream> # ...

  5. 配对t检验

  6. webapp项目vue框架点击按钮实现微信好友分享,朋友圈分享

    当时做这个这个效果真把人给*了,网上能搜到的基本是微信页面的分享,特征是方法是wx.**开头,不适用于app内.思路都是一样的,先调取服务(这里使用plus的内置方法),再发送分享请求 <tem ...

  7. springboot访问请求404问题

    新手在刚接触springboot的时候,可能会出现访问请求404的情况,代码没问题,但就是404. 疑问:在十分确定代码没问题的时候,可以看下自己的包是不是出问题了? 原因:SpringBoot 注解 ...

  8. ElasticSearch 本机可以访问,外网无法访问----问题解决

    问题:本机可以访问,外网无法访问 config/elasticsearch.yml network.host: 0.0.0.0 使用普通用户zuoys,重启es,报错如下: [1]: max file ...

  9. 1.Jenkins基本安装及插件离线安装

    Jenkins基本安装 Jenkins官方地址:https://jenkins.io/zh/,下载最新版本,需要依赖对应的jdk版本才可以正常运行. dockerfile文件构建docker镜像 FR ...

  10. SOA,ROA 比较

    1.SOA 面向服务架构 业务被抽象成服务 SOA架构中的对外服务一般都由web service来暴露 SOA架构中的内部服务一般由某种高效的RPC调用来暴露,当然了 也可以用web service来 ...