• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    現(xiàn)代Web 技術(shù)在MES 系統(tǒng)中的應(yīng)用

    2018-12-19 02:18:22郭政健
    新一代信息技術(shù) 2018年5期
    關(guān)鍵詞:數(shù)據(jù)庫系統(tǒng)

    郭政健,楊 軍

    (北京郵電大學(xué)自動(dòng)化學(xué)院,北京 100876)

    0 引言

    企業(yè)的生產(chǎn)管理信息化建設(shè)主要通過建立企業(yè)資源計(jì)劃(ERP)、制造執(zhí)行系統(tǒng)(MES)、過程控制系統(tǒng)(PCS)等,來實(shí)現(xiàn)計(jì)劃層、執(zhí)行層及設(shè)備層的有機(jī)結(jié)合。其中的ERP 實(shí)現(xiàn)對企業(yè)內(nèi)部資源和生產(chǎn)計(jì)劃的有效管理,PCS 完成對生產(chǎn)過程和車間設(shè)備的及時(shí)管控;而位于執(zhí)行層的MES 系統(tǒng)則擔(dān)當(dāng)協(xié)調(diào)和傳遞企業(yè)計(jì)劃與實(shí)際生產(chǎn)信息橋梁的角色,在制造業(yè)信息化過程中起著越來越重要的作用[1]。

    隨著隨著企業(yè)員工對移動(dòng)辦公和遠(yuǎn)程工作的需求不斷上升,信息管理系統(tǒng)移動(dòng)化是企業(yè)提升管理能力和產(chǎn)品質(zhì)量、降低生產(chǎn)運(yùn)作成本、應(yīng)對市場競爭的客觀需要。

    Web 應(yīng)用具有天然的跨平臺優(yōu)勢,采用傳統(tǒng)開發(fā)模式開發(fā)MES 應(yīng)用,在開發(fā)桌面應(yīng)用的同時(shí),根據(jù)需求往往需要相應(yīng)開發(fā)Android 和IOS 兩大平臺的APP,不僅造成了成本上升和開發(fā)周期延長,也會(huì)加重小型企業(yè)的經(jīng)營負(fù)擔(dān)。

    近些年來,利用Web 技術(shù)開發(fā)MES 系統(tǒng)的實(shí)踐與論文設(shè)計(jì)越來越多。但經(jīng)過調(diào)研發(fā)現(xiàn),這些Web系統(tǒng)或者只使用落后技術(shù)如JSP 進(jìn)行開發(fā),或是沒有有效利用Web 技術(shù)的新特性,因而造成應(yīng)用性能不足、體驗(yàn)較差、開發(fā)部署成本較大等問題。隨著Web 前后端技術(shù)的不斷發(fā)展,Chrome 瀏覽器V8 內(nèi)核性能的提升,Web 應(yīng)用已經(jīng)從最初用于單純展示信息使用的靜態(tài)頁面發(fā)展成了具有成熟開發(fā)架構(gòu),可以處理復(fù)雜業(yè)務(wù)需求的應(yīng)用。本文將從Web 前端SPA 技術(shù)與微服務(wù)化、Web 后端技術(shù)選型及設(shè)計(jì)、WebSocket 及WebWoker 的應(yīng)用,結(jié)合MES 系統(tǒng)的具體功能場景進(jìn)行討論實(shí)現(xiàn),在一定程度上提升了MES 系統(tǒng)利用Web 技術(shù)跨平臺的性能和體驗(yàn)。

    1 SPA 技術(shù)及微服務(wù)技術(shù)構(gòu)建前端框架

    1.1 SPA 單頁應(yīng)用開發(fā)技術(shù)介紹

    SPA(Single Page Application)技術(shù),即為單頁應(yīng)用技術(shù)。它將所有的活動(dòng)局限在一個(gè)Web 頁面中,所有業(yè)務(wù)功能都是其子模塊,這些子模塊通過特定的方式掛接到頁面中[2]。單頁Web 應(yīng)用只加載單個(gè)HTML 頁面,在用戶與應(yīng)用程序交互時(shí)動(dòng)態(tài)更新該頁面的Web 應(yīng)用程序,通常使用JSON 數(shù)據(jù)格式進(jìn)行數(shù)據(jù)交換。其具有以下顯著優(yōu)點(diǎn):

    (1)更好的用戶體驗(yàn),因?yàn)椴恍枰偾袚Q頁面時(shí)發(fā)起二次HTTP 請求獲取新的HTML。

    (2)減輕服務(wù)器壓力,因?yàn)轫撁嫠璧馁Y源(HTML CSS JS 等),在一次請求中就加載完成,也不需刷新地動(dòng)態(tài)加載。

    (3)經(jīng)典MVC 開發(fā)模式,前后端各負(fù)其責(zé),程序耦合度低利于維護(hù)。

    1.2 SPA 單頁應(yīng)用開發(fā)技術(shù)介紹

    SPA 技術(shù)在帶來性能及體驗(yàn)優(yōu)化的同時(shí),同樣存在著一些問題:由于應(yīng)用只有一個(gè)HTML 頁面,它不利于搜索引擎優(yōu)化(SEO),同時(shí)靜態(tài)資源的一次性獲取會(huì)造成應(yīng)用首屏加載相對緩慢。不過對于MES 系統(tǒng)的應(yīng)用場景,這些缺點(diǎn)將變得無關(guān)緊要。而其可以提供快速流暢的用戶體驗(yàn)和交互特性,非常適合于制造執(zhí)行系統(tǒng)即時(shí)通信,快速反應(yīng)的需求。

    SPA 應(yīng)用技術(shù)的核心是前端路由攔截,可以通過HTML5 提供的History API 進(jìn)行實(shí)現(xiàn),核心代碼如下:

    class Route {

    constructor (routeMap) {

    this.routeMap = routeMap;

    this._bindPopState();

    }

    init (path) {

    path = Route.correctPath(path);

    history.replaceState({path: path}, '', path);

    this.routeMap[path] && this.routeMap[path]();

    }

    go (path) {

    path = Route.correctPath(path);

    history.pushState({path: path}, '', path);

    this.routeMap[path] && this.routeMap[path]();

    }

    _bindPopState () {

    window.addEventListener('popstate', (e) => {

    const path = e.state && e.state.path;

    this.routeMap[path] && this.routeMap[path]();

    });

    }

    static correctPath (path) {

    if (path !== '/' && path.slice(-1) === '/') {

    path = path.match(/(.+)/$/)[1];

    }

    return path;

    }

    }

    通常我們不需要自己編寫一套完整的SPA 邏輯實(shí)現(xiàn),可以采用社區(qū)中成熟的SPA 模式框架進(jìn)行系統(tǒng)的開發(fā),如React.js。

    1.3 前端微服務(wù)技術(shù)介紹

    前端微服務(wù)技術(shù)將微服務(wù)的理念應(yīng)用于瀏覽器端,即將Web 應(yīng)用由單一的單體應(yīng)用轉(zhuǎn)變?yōu)槎鄠€(gè)小型前端應(yīng)用聚合為一的應(yīng)用。各個(gè)前端應(yīng)用還可以獨(dú)立運(yùn)行、獨(dú)立開發(fā)、獨(dú)立部署。這里的前端應(yīng)用特指基于前述討論的SPA 技術(shù)開發(fā)出的應(yīng)用。

    單體前端應(yīng)用的路由是由框架進(jìn)行分發(fā),將路由指定到對應(yīng)的組件或者內(nèi)部服務(wù)中。前端微服務(wù)將應(yīng)用內(nèi)的組件調(diào)用變成了更細(xì)粒度的應(yīng)用間組件調(diào)用,即從將路由分發(fā)到應(yīng)用的組件執(zhí)行,變?yōu)楦鶕?jù)路由來找到對應(yīng)的應(yīng)用,再由應(yīng)用分發(fā)到對應(yīng)的組件上。

    當(dāng)Web 應(yīng)用復(fù)雜到一定規(guī)模時(shí),通常會(huì)面臨程序代碼管理困難、開發(fā)人員配合困難等問題,使用微服務(wù)思想構(gòu)建系統(tǒng)是一個(gè)可行有效的方法。前端微服務(wù)化的架構(gòu)圖如圖1 所示:

    圖1 前端微服務(wù)架構(gòu)圖 Fig.1 Front-end Microservice architecture

    圖2 MES 系統(tǒng)主要模塊圖 Fig.2 Main module of Manufacturing Execution System

    1.4 前端微服務(wù)技術(shù)在MES 系統(tǒng)中的應(yīng)用分析

    國際制造執(zhí)行系統(tǒng)協(xié)會(huì)MESA 對制造執(zhí)行系統(tǒng)定義11 個(gè)功能模塊,包括工序詳細(xì)調(diào)度、資源分配和狀態(tài)管理、生產(chǎn)單元分配、過程管理、人力資源管理、維護(hù)管理、質(zhì)量管理、文檔控制、產(chǎn)品跟蹤和產(chǎn)品清單管理、性能分析和數(shù)據(jù)采集[3]。MES 系統(tǒng)主要包含的模塊如圖2 所示:

    可以看出,MES 系統(tǒng)設(shè)計(jì)的功能模塊很多,且每一個(gè)模塊的縱向和橫向擴(kuò)展也可以很大。雖然多數(shù)情況下并不需要所有的功能模塊,一旦面臨這種特別復(fù)雜的系統(tǒng)實(shí)現(xiàn)時(shí)。前端微服務(wù)技術(shù)可以提供很大的幫助,有利于模塊間的解耦和不同開發(fā)人員的協(xié)同配合,并提高應(yīng)用程序的加載體驗(yàn)。實(shí)現(xiàn)前端微服務(wù)化的方式并不唯一,下面闡述一種實(shí)現(xiàn)方式:

    (1)Web 應(yīng)用具有一個(gè)主工程,主工程在運(yùn)行時(shí)去服務(wù)器獲取最新的應(yīng)用配置。

    (2)主工程在獲取到配置后,將一一創(chuàng)建應(yīng)用,并為應(yīng)用綁定生命周期。

    (3)當(dāng)主工程監(jiān)測到路由變化的時(shí)候,將尋找是否有對應(yīng)的路由匹配到應(yīng)用。

    (4)當(dāng)匹配對應(yīng)應(yīng)用時(shí),加載相應(yīng)的應(yīng)用。 其架構(gòu)圖如圖3 所示。

    圖3 前端微服務(wù)設(shè)計(jì)圖 Fig.3 Front-end microservice design

    2 Node.js 與MongoDB 構(gòu)建后端框架

    2.1 Node.js 介紹

    Node.js 是一個(gè)基于Chrome V8 引擎的JavaScript 運(yùn)行環(huán)境,它使JavaScript 代碼既可以在瀏覽器運(yùn)行,也可以在服務(wù)器端運(yùn)行,同時(shí)可實(shí)現(xiàn)文件處理、網(wǎng)絡(luò)通信等功能[4]。Node.js 使用了一個(gè)事件驅(qū)動(dòng)、非阻塞式I/O 的模型,使其輕量又高效。開發(fā)者可以在不使用線程的情況下開發(fā)出一個(gè)能夠承載高并發(fā)的服務(wù)器。其他服務(wù)器端語言難以開發(fā)高并發(fā)應(yīng)用,而且即使開發(fā)出來,性能也不盡人意。Node.js 正是在這個(gè)前提下被創(chuàng)造出來。Node.js 把JavaScript 的易學(xué)易用和Unix 網(wǎng)絡(luò)編程的強(qiáng)大結(jié)合到了一起。它專注于網(wǎng)絡(luò)功能,在HTTP、DNS、TCP 等方面更加成熟。

    2.2 Node.js 在MES 系統(tǒng)中的應(yīng)用分析

    如上文所述,Node.js 可以認(rèn)為是數(shù)據(jù)密集型分布式部署環(huán)境下的實(shí)時(shí)應(yīng)用系統(tǒng)的出色解決方案。相對其他方案而言,它不適合CPU 使用率較重、IO 使用率較輕的應(yīng)用——如視頻編碼、人工智能等。但對于MES 系統(tǒng)面對的并發(fā)量較高,網(wǎng)絡(luò)請求頻繁而計(jì)算負(fù)擔(dān)并不嚴(yán)重的場景性能更高,是一種優(yōu)秀的選擇。

    在系統(tǒng)設(shè)計(jì)實(shí)踐中,可以配合Node.js 框架Koa 協(xié)同開發(fā)。Koa 框架是Express 框架作者提出的另一種Node.js 平臺Web 框架[5],致力于成為Web 應(yīng)用和API 開發(fā)領(lǐng)域中的一個(gè)更小、更富有表現(xiàn)力、更健壯的基石。它通過利用async 函數(shù),Koa 丟棄了傳統(tǒng)的回調(diào)函數(shù),并有力地增強(qiáng)錯(cuò)誤處理,同時(shí)具有更好的性能。

    2.3 MongoDB 介紹

    MongoDB 是一個(gè)基于分布式文件存儲的數(shù)據(jù)庫,屬于非關(guān)系數(shù)據(jù)庫,用C++語言編寫而成,旨在為Web 應(yīng)用程序提供可擴(kuò)展的高性能數(shù)據(jù)存儲解決方案[6]。它在許多場景下用于替代傳統(tǒng)的關(guān)系型數(shù)據(jù)庫或鍵值對存儲方式。它主要具有以下幾點(diǎn)特性:

    (1)實(shí)用性

    MongoDB 是一個(gè)面向文檔的數(shù)據(jù)庫,它并不是關(guān)系型數(shù)據(jù)庫,直接存取BSON,這意味著MongoDB更加靈活,因?yàn)榭梢栽谖臋n中直接插入數(shù)組之類的復(fù)雜數(shù)據(jù)類型,設(shè)計(jì)數(shù)據(jù)庫將變得非常方便,可以大大地提升開發(fā)進(jìn)度。

    (2)可用性和負(fù)載均衡

    MongoDB 在高可用和讀負(fù)載均衡上的實(shí)現(xiàn)非常簡潔和友好,自帶副本集的概念,通過設(shè)計(jì)適合自己業(yè)務(wù)的副本集和驅(qū)動(dòng)程序,可以非常有效和方便地實(shí)現(xiàn)高可用,讀負(fù)載均衡。而在其他數(shù)據(jù)庫產(chǎn)品中想實(shí)現(xiàn)以上功能,往往需要額外安裝復(fù)雜的中間件,大大提升了系統(tǒng)復(fù)雜度,故障排查難度和運(yùn)維成本。

    (3)擴(kuò)展性

    在擴(kuò)展性上,MongoDB 有非常有效的,現(xiàn)成的解決方案。通過自帶的Mongos 集群,只需要在適當(dāng)?shù)臅r(shí)候繼續(xù)添加Mongo 分片,就可以實(shí)現(xiàn)程序段自動(dòng)水平擴(kuò)展和路由,一方面緩解單個(gè)節(jié)點(diǎn)的讀寫壓力,另外一方面可有效地均衡磁盤容量的使用情況。整個(gè)mongos 集群對應(yīng)用層完全透明,并可完美地做到各個(gè)Mongos 集群組件的高可用性。

    2.4 MongoDB 在MES 系統(tǒng)中的應(yīng)用分析

    MongoDB 的劣勢是不適合數(shù)據(jù)量小,數(shù)據(jù)間交叉引用關(guān)系復(fù)雜,查詢模式豐富的系統(tǒng)。而MES系統(tǒng)在多數(shù)場景下,如生產(chǎn)數(shù)據(jù)管理、文檔設(shè)備人員管理、庫存管理等并不需要過于復(fù)雜的查詢邏輯,因此不會(huì)受到明顯的影響。同時(shí)MES 系統(tǒng)的并發(fā)量較高,數(shù)據(jù)量較大同時(shí)面臨數(shù)據(jù)庫擴(kuò)容的問題,很符合MongoDB 數(shù)據(jù)庫的應(yīng)用場景。因此選取MongoDB 作為數(shù)據(jù)庫開發(fā)系統(tǒng)是一種可行有效的方案。

    在實(shí)際系統(tǒng)開發(fā)中,需要為Node.js 提供操作MongoDB的插件,比較優(yōu)秀的一種方案是使用Mongoose。Mongoose是在NodeJS 異步情況下對MongoDB 進(jìn)行方便快捷操縱行為的目標(biāo)模型工具庫[7]。它封裝了對MongoDB 對文檔操作的常用處理方法,使得Node.js 操作MongoDB 數(shù)據(jù)庫變得更加容易。Web 后端的簡易架構(gòu)圖如圖4 所示:

    圖4 后端簡易架構(gòu)圖 Fig.4 Back-end simple architecture

    3 WebSocket 技術(shù)實(shí)現(xiàn)生產(chǎn)監(jiān)控

    3.1 WebSocket 技術(shù)介紹

    WebSocket 協(xié)議是基于TCP 的一種新的網(wǎng)絡(luò)協(xié)議。WebSocket 本質(zhì)上是建立在TCP 協(xié)議上的Socket連接,在應(yīng)用層對Socket 連接進(jìn)行了封裝,簡化了接口及調(diào)用方法[8]。它實(shí)現(xiàn)了瀏覽器與服務(wù)器全雙工(full-duplex)通信——允許服務(wù)器主動(dòng)發(fā)送信息給客戶端。

    WebSocket 協(xié)議為實(shí)現(xiàn)即時(shí)服務(wù)帶來了兩大好處:

    (1)互相溝通的Header 是很小的-大概只有2 Bytes。

    (2)服務(wù)器的推送,服務(wù)器不再被動(dòng)的接收到瀏覽器的請求之后才返回?cái)?shù)據(jù),而是在有新數(shù)據(jù)時(shí)就主動(dòng)推送給瀏覽器。

    傳統(tǒng)Web 應(yīng)用中的即時(shí)通信采用ajax 輪詢的機(jī)制,這樣既耗費(fèi)了服務(wù)器的資源,又會(huì)帶來通信不及時(shí),通信中斷等問題。

    3.2 WebSocket 技術(shù)在MES 系統(tǒng)中的應(yīng)用分析

    生產(chǎn)監(jiān)控是MES 系統(tǒng)的核心模塊,在生產(chǎn)實(shí)際中往往需要實(shí)時(shí)的獲取機(jī)器設(shè)備的狀態(tài)參數(shù)如溫度、濕度等,以及獲取機(jī)器的加工狀態(tài)數(shù)據(jù)如正在加工的工件數(shù)據(jù)、加工時(shí)間和進(jìn)展等。利用WebSocket技術(shù)可以解決傳統(tǒng)Web 應(yīng)用的性能弊端,是一種有效的解決方案。

    在實(shí)際開發(fā)中,通常利用Socket.IO 進(jìn)行輔助開發(fā),Socket.IO 是一個(gè)WebSocket 庫,包括了客戶端的JavaScript 和服務(wù)器端的Node.js,它的目標(biāo)是構(gòu)建可以在不同瀏覽器和移動(dòng)設(shè)備上使用的實(shí)時(shí)應(yīng)用。開發(fā)生產(chǎn)監(jiān)控實(shí)際應(yīng)用的核心代碼如下,為了演示方便假設(shè)機(jī)器加工數(shù)據(jù)會(huì)被推送到某個(gè)文件中:

    const server = require('http').Server(app.callback());

    const io = require('socket.io')(server);

    io.on('connection', function (socket) {

    socket.on('monitor', () => {

    socket.join('monitor', () => {

    let cacheData;

    fs.readFile('../static/processData.txt', (err, data) => {

    cacheData = data.toString(); // 緩存數(shù)據(jù)

    io.to('monitor').emit('status', cacheData);

    fs.watch('../static/processData.txt', (eventType, filename) => {

    fs.readFile('../static/processData.txt', (err, data) => {

    if (data.toString() !== cacheData) {

    io.to('monitor').emit('status', data.toString());

    }

    });

    });

    });

    });

    })

    });

    瀏覽器端的WebSocket 實(shí)現(xiàn)方式與上述服務(wù)端類似,限于篇幅不再列出核心代碼。

    4 WebWorker 技術(shù)結(jié)合排產(chǎn)算法

    4.1 WebWorker 技術(shù)介紹

    JavaScript 語言采用的是單線程模型,所有任務(wù)只能在一個(gè)線程上完成。隨著計(jì)算機(jī)計(jì)算能力的增強(qiáng),尤其是多核CPU 的出現(xiàn),單線程帶來很大的不便,無法充分發(fā)揮計(jì)算機(jī)的計(jì)算能力。

    H5 的出現(xiàn)為我們帶來了WebWorker,WebWorker 允許我們通過瀏覽器主線程來創(chuàng)建工作線程[9]。WebWorker 為Web 內(nèi)容在后臺線程中運(yùn)行腳本提供了一種簡單的方法。線程可以執(zhí)行任務(wù)而不干擾用戶界面。等到工作線程完成計(jì)算任務(wù),再把結(jié)果返回給主線程。這樣一些計(jì)算密集型或高延遲的任務(wù)可以交付被工作線程解決,主線程(通常負(fù)責(zé)UI 交互)不會(huì)被阻塞或拖慢。

    4.2 WebWorker 技術(shù)在MES 系統(tǒng)中的應(yīng)用分析

    計(jì)劃排產(chǎn)模塊是MES 系統(tǒng)的又一個(gè)核心模塊,它的主要作用是解決柔性作業(yè)調(diào)用問題(FJSSP)。柔性作業(yè)車間調(diào)度問題(FJSSP)是組合優(yōu)化和生產(chǎn)管理領(lǐng)域很重要的研究課題,它是經(jīng)典的作業(yè)車間調(diào)度問題(JSSP)的延伸且被認(rèn)為是強(qiáng)NP-hard 問題[10]。在FJSSP 中,同一個(gè)工序的加工機(jī)器可能有多臺。FJSSP 由兩個(gè)子問題組成,第一個(gè)子問題是將一系列可選的機(jī)器分配給指定的工序,第二個(gè)子問題是計(jì)算分配給指定機(jī)器的工序序列的完工時(shí)間。目前業(yè)界流行的FJSSP 問題解決方案是以遺傳算法為基礎(chǔ),結(jié)合其他算法進(jìn)行深度優(yōu)化。

    在一般的MES 系統(tǒng)的開發(fā)中,算法程序可以內(nèi)置在Web 后端的Java 程序中,或是在Web 后端和Python 算法模塊進(jìn)行數(shù)據(jù)交換得到排產(chǎn)數(shù)據(jù)返回Web 前端。隨著Chrome 瀏覽器V8 內(nèi)核性能的提升,瀏覽器端的計(jì)算速度得到了較大提升。同時(shí)由于HTML5 中WebWorker 技術(shù)的出現(xiàn),Web 前端的純算法計(jì)算可以不造成JavaScript 主線程的阻塞從而影響用戶的使用。

    在Web 前端部署一些算法的好處是可以避免發(fā)送相關(guān)的網(wǎng)絡(luò)請求,以及在斷網(wǎng)異常情況下仍然可以完成模塊的功能。盡管在WebWorker 中運(yùn)行算法的速度仍然和傳統(tǒng)的后端運(yùn)行環(huán)境有一定的差距,但對于一些小型企業(yè),排產(chǎn)需求相對不復(fù)雜,這種方案的運(yùn)算速度將足以勝任生產(chǎn)需求,并可以發(fā)揮前述列舉的優(yōu)勢。WebWorker 在項(xiàng)目中的實(shí)踐核心代碼如下:

    // 主線程

    let worker = new Worker('work.js');// 引入文件

    worker.postMessage({plans: [], mechines: []}); // 傳入工序配置和加工機(jī)器

    worker.onmessage = function (event) {

    getDataSuccess(event.data); // 獲取排產(chǎn)數(shù)據(jù)

    }

    function getDataSuccess () {

    // 執(zhí)行后續(xù)任務(wù)

    worker.postMessage('Work done!');

    }

    // Worker 線程

    self.addEventListener('message', function (e) {

    let data = doJob();

    self.postMessage('result ' + data); // 將排產(chǎn)結(jié)果返回給主線程

    }, false);

    function doJob (){

    // 這里進(jìn)行相關(guān)算法(如遺傳算法)的運(yùn)算

    ….

    }

    5 結(jié)論

    本文給出了結(jié)合現(xiàn)代Web 技術(shù)開發(fā)MES 系統(tǒng)的有效方案,分別從Web 前端架構(gòu)設(shè)計(jì)、Web 后端設(shè)計(jì)及技術(shù)選型、WebSocket 在MES 系統(tǒng)生產(chǎn)監(jiān)控中的應(yīng)用以及WebWorker 在MES 系統(tǒng)排產(chǎn)中的應(yīng)用方案等方面進(jìn)行探討。這些方案在Web 應(yīng)用的體驗(yàn)及性能優(yōu)化、減輕服務(wù)器負(fù)載、降低開發(fā)成本及提高開發(fā)效率等方面起到了很好的幫助作用。可以為MES 系統(tǒng)的開發(fā)人員提供有效可行的參考,在工程實(shí)踐上具有很大的意義。

    猜你喜歡
    數(shù)據(jù)庫系統(tǒng)
    Smartflower POP 一體式光伏系統(tǒng)
    WJ-700無人機(jī)系統(tǒng)
    ZC系列無人機(jī)遙感系統(tǒng)
    北京測繪(2020年12期)2020-12-29 01:33:58
    基于PowerPC+FPGA顯示系統(tǒng)
    半沸制皂系統(tǒng)(下)
    連通與提升系統(tǒng)的最后一塊拼圖 Audiolab 傲立 M-DAC mini
    數(shù)據(jù)庫
    數(shù)據(jù)庫
    數(shù)據(jù)庫
    數(shù)據(jù)庫
    一边摸一边做爽爽视频免费| 国产淫语在线视频| 看十八女毛片水多多多| 99香蕉大伊视频| 亚洲精品国产一区二区精华液| 青草久久国产| 精品一区在线观看国产| 观看av在线不卡| 免费高清在线观看视频在线观看| 久久精品亚洲av国产电影网| 日韩精品有码人妻一区| 国产亚洲最大av| av一本久久久久| 美女xxoo啪啪120秒动态图| 成人影院久久| 国产成人av激情在线播放| 日韩成人av中文字幕在线观看| 青青草视频在线视频观看| 天天躁日日躁夜夜躁夜夜| 欧美日韩av久久| 欧美日韩亚洲国产一区二区在线观看 | 91aial.com中文字幕在线观看| 免费高清在线观看视频在线观看| 性少妇av在线| 男女边吃奶边做爰视频| 国产成人免费无遮挡视频| 日韩成人av中文字幕在线观看| 黄网站色视频无遮挡免费观看| 一区二区日韩欧美中文字幕| 亚洲av国产av综合av卡| 成人漫画全彩无遮挡| 一级a爱视频在线免费观看| 日本欧美视频一区| 伊人亚洲综合成人网| 国产精品人妻久久久影院| 丰满少妇做爰视频| 韩国精品一区二区三区| 一级毛片黄色毛片免费观看视频| 精品午夜福利在线看| 美国免费a级毛片| 国产乱人偷精品视频| 成人亚洲精品一区在线观看| 中国三级夫妇交换| 在线 av 中文字幕| 少妇被粗大的猛进出69影院| 午夜av观看不卡| 观看美女的网站| 国产精品一二三区在线看| 国产又色又爽无遮挡免| 香蕉国产在线看| 黑人欧美特级aaaaaa片| 精品少妇一区二区三区视频日本电影 | 精品国产超薄肉色丝袜足j| 蜜桃在线观看..| 麻豆av在线久日| 免费av中文字幕在线| 水蜜桃什么品种好| 在线精品无人区一区二区三| 视频区图区小说| 啦啦啦视频在线资源免费观看| 晚上一个人看的免费电影| 十八禁网站网址无遮挡| 国产欧美日韩综合在线一区二区| 夜夜骑夜夜射夜夜干| 丁香六月天网| 伊人亚洲综合成人网| 免费av中文字幕在线| 秋霞在线观看毛片| 亚洲精品美女久久av网站| 欧美日韩精品成人综合77777| 精品少妇久久久久久888优播| 国产精品蜜桃在线观看| 老司机影院毛片| 亚洲伊人久久精品综合| 欧美 亚洲 国产 日韩一| 波多野结衣av一区二区av| 国产有黄有色有爽视频| 色哟哟·www| www日本在线高清视频| 日韩免费高清中文字幕av| 国产免费现黄频在线看| 日韩在线高清观看一区二区三区| 在线观看一区二区三区激情| 亚洲三区欧美一区| 国产精品国产三级国产专区5o| 男女午夜视频在线观看| 国产成人午夜福利电影在线观看| 国产男女超爽视频在线观看| 亚洲av日韩在线播放| 精品国产乱码久久久久久小说| 多毛熟女@视频| 午夜日韩欧美国产| 国产精品国产三级国产专区5o| 一个人免费看片子| 欧美黄色片欧美黄色片| 日本免费在线观看一区| 2018国产大陆天天弄谢| 超碰97精品在线观看| 亚洲成av片中文字幕在线观看 | av在线播放精品| 丝瓜视频免费看黄片| 久久久久久久久久人人人人人人| 亚洲内射少妇av| 亚洲欧美精品综合一区二区三区 | 在线观看三级黄色| 少妇熟女欧美另类| 成人免费观看视频高清| 啦啦啦在线观看免费高清www| 欧美日韩精品网址| 黄色配什么色好看| 日韩中文字幕视频在线看片| 久久久久国产精品人妻一区二区| 人妻一区二区av| 最黄视频免费看| 亚洲国产最新在线播放| 人妻 亚洲 视频| 18在线观看网站| 久久人人爽av亚洲精品天堂| 国产精品蜜桃在线观看| 看十八女毛片水多多多| 久久精品人人爽人人爽视色| 曰老女人黄片| 欧美人与性动交α欧美软件| 韩国高清视频一区二区三区| 在线观看一区二区三区激情| 亚洲成色77777| 国产精品偷伦视频观看了| 亚洲国产欧美在线一区| 国产成人a∨麻豆精品| 国产乱来视频区| 秋霞伦理黄片| 欧美日韩综合久久久久久| 日本av免费视频播放| 男女国产视频网站| 女性被躁到高潮视频| 国产日韩欧美亚洲二区| 日韩人妻精品一区2区三区| av一本久久久久| 久热久热在线精品观看| 久久人妻熟女aⅴ| 免费av中文字幕在线| 蜜桃国产av成人99| 在线看a的网站| 国产人伦9x9x在线观看 | 免费人妻精品一区二区三区视频| 久久 成人 亚洲| 涩涩av久久男人的天堂| 国产女主播在线喷水免费视频网站| 青春草亚洲视频在线观看| 如何舔出高潮| 母亲3免费完整高清在线观看 | 日韩电影二区| 如日韩欧美国产精品一区二区三区| 国产成人免费无遮挡视频| 国产一区有黄有色的免费视频| 亚洲精品自拍成人| 午夜老司机福利剧场| 国产精品香港三级国产av潘金莲 | 伊人亚洲综合成人网| 综合色丁香网| 久久国产精品男人的天堂亚洲| 1024视频免费在线观看| 午夜福利影视在线免费观看| 欧美人与善性xxx| 亚洲av男天堂| 天堂俺去俺来也www色官网| 成年人免费黄色播放视频| 爱豆传媒免费全集在线观看| 少妇 在线观看| 久久鲁丝午夜福利片| 成人国产av品久久久| 亚洲图色成人| 2022亚洲国产成人精品| 亚洲色图综合在线观看| 日韩中文字幕欧美一区二区 | 欧美老熟妇乱子伦牲交| 精品人妻偷拍中文字幕| 男女国产视频网站| 性色av一级| 国产精品.久久久| 国产欧美日韩综合在线一区二区| 啦啦啦在线免费观看视频4| 丰满饥渴人妻一区二区三| 蜜桃在线观看..| 青草久久国产| 午夜福利视频精品| 少妇精品久久久久久久| 交换朋友夫妻互换小说| 熟女少妇亚洲综合色aaa.| 一级黄片播放器| 伦精品一区二区三区| 久久精品亚洲av国产电影网| 亚洲色图综合在线观看| 老熟女久久久| 精品国产乱码久久久久久男人| 熟女少妇亚洲综合色aaa.| 九色亚洲精品在线播放| 熟女av电影| 成人手机av| 丰满迷人的少妇在线观看| 亚洲欧美日韩另类电影网站| 亚洲成av片中文字幕在线观看 | 在线观看免费高清a一片| 久热久热在线精品观看| 久久鲁丝午夜福利片| 只有这里有精品99| 成年女人毛片免费观看观看9 | 国产极品天堂在线| 国产亚洲午夜精品一区二区久久| 曰老女人黄片| 80岁老熟妇乱子伦牲交| 人体艺术视频欧美日本| 国产精品一国产av| 人妻人人澡人人爽人人| 免费大片黄手机在线观看| 国产一区亚洲一区在线观看| 成年av动漫网址| 91午夜精品亚洲一区二区三区| 啦啦啦视频在线资源免费观看| 久久精品熟女亚洲av麻豆精品| 婷婷色综合大香蕉| 麻豆乱淫一区二区| 精品福利永久在线观看| 午夜日韩欧美国产| 日韩,欧美,国产一区二区三区| 亚洲综合色网址| 国产成人欧美| 婷婷色麻豆天堂久久| 午夜日韩欧美国产| 宅男免费午夜| 午夜激情久久久久久久| 18禁动态无遮挡网站| 男的添女的下面高潮视频| 一二三四中文在线观看免费高清| 黄片小视频在线播放| 一级毛片 在线播放| 国产无遮挡羞羞视频在线观看| 天堂中文最新版在线下载| 人人妻人人添人人爽欧美一区卜| 另类亚洲欧美激情| 日韩av免费高清视频| 伊人久久大香线蕉亚洲五| 伊人亚洲综合成人网| videossex国产| 国产伦理片在线播放av一区| 多毛熟女@视频| av在线app专区| 欧美日韩视频精品一区| 九色亚洲精品在线播放| 五月开心婷婷网| 久久这里只有精品19| 人妻 亚洲 视频| 深夜精品福利| 精品人妻偷拍中文字幕| 制服人妻中文乱码| 亚洲精品在线美女| 在线天堂中文资源库| 亚洲欧美成人综合另类久久久| 王馨瑶露胸无遮挡在线观看| 波多野结衣av一区二区av| 国产成人精品久久二区二区91 | 亚洲av日韩在线播放| 欧美另类一区| 丰满饥渴人妻一区二区三| 岛国毛片在线播放| 又粗又硬又长又爽又黄的视频| 亚洲国产欧美日韩在线播放| av在线观看视频网站免费| 免费在线观看视频国产中文字幕亚洲 | 少妇人妻久久综合中文| 黄色 视频免费看| 亚洲精品视频女| 精品国产国语对白av| 精品人妻熟女毛片av久久网站| 欧美中文综合在线视频| 日本欧美视频一区| 一本—道久久a久久精品蜜桃钙片| 飞空精品影院首页| 青草久久国产| 少妇 在线观看| 制服丝袜香蕉在线| 精品久久久精品久久久| 九草在线视频观看| av国产精品久久久久影院| 另类亚洲欧美激情| 男女高潮啪啪啪动态图| 一区二区日韩欧美中文字幕| 熟女少妇亚洲综合色aaa.| 极品少妇高潮喷水抽搐| 日本wwww免费看| 丝袜在线中文字幕| 欧美精品一区二区免费开放| 亚洲精品第二区| 男女免费视频国产| 亚洲av免费高清在线观看| videosex国产| 国产精品久久久久久av不卡| 国产一区二区激情短视频 | 美女脱内裤让男人舔精品视频| 人人妻人人添人人爽欧美一区卜| 亚洲精华国产精华液的使用体验| 国产精品 欧美亚洲| videos熟女内射| 久久久久精品久久久久真实原创| 女的被弄到高潮叫床怎么办| 在线观看免费日韩欧美大片| 久久人人爽人人片av| 久久99一区二区三区| av国产久精品久网站免费入址| 老汉色av国产亚洲站长工具| 我的亚洲天堂| 人妻一区二区av| 国产视频首页在线观看| 日韩在线高清观看一区二区三区| av天堂久久9| 国产av一区二区精品久久| 午夜激情久久久久久久| 男人添女人高潮全过程视频| 亚洲精品国产一区二区精华液| 丝袜喷水一区| 中国三级夫妇交换| 国产精品久久久av美女十八| 日韩三级伦理在线观看| 免费少妇av软件| 十分钟在线观看高清视频www| av线在线观看网站| 99热网站在线观看| 高清在线视频一区二区三区| 少妇人妻久久综合中文| 91成人精品电影| 亚洲伊人久久精品综合| 涩涩av久久男人的天堂| 少妇的丰满在线观看| 91成人精品电影| 精品一区二区免费观看| 国产野战对白在线观看| 国产97色在线日韩免费| 午夜影院在线不卡| xxx大片免费视频| 精品亚洲成国产av| 亚洲成国产人片在线观看| 日日啪夜夜爽| 亚洲一级一片aⅴ在线观看| 日日啪夜夜爽| 爱豆传媒免费全集在线观看| 一级爰片在线观看| 一本—道久久a久久精品蜜桃钙片| 国产日韩欧美亚洲二区| 少妇的丰满在线观看| 国产亚洲av片在线观看秒播厂| 国产一区二区在线观看av| 九九爱精品视频在线观看| 中文字幕人妻熟女乱码| 18禁观看日本| 日本vs欧美在线观看视频| 国产在线一区二区三区精| 五月伊人婷婷丁香| 晚上一个人看的免费电影| av免费观看日本| 国产精品久久久久久精品古装| 街头女战士在线观看网站| 黄网站色视频无遮挡免费观看| 汤姆久久久久久久影院中文字幕| 在线免费观看不下载黄p国产| 亚洲av欧美aⅴ国产| 欧美日韩av久久| 久久久久久久久久久久大奶| 日韩 亚洲 欧美在线| av网站免费在线观看视频| 国产精品久久久久成人av| 国产免费又黄又爽又色| 欧美人与性动交α欧美精品济南到 | 咕卡用的链子| 国产伦理片在线播放av一区| 中文字幕色久视频| 亚洲国产欧美日韩在线播放| 欧美精品人与动牲交sv欧美| 中文字幕av电影在线播放| 久热这里只有精品99| 国产极品粉嫩免费观看在线| 97精品久久久久久久久久精品| 黑丝袜美女国产一区| 搡老乐熟女国产| 熟妇人妻不卡中文字幕| 国产麻豆69| 精品人妻一区二区三区麻豆| 各种免费的搞黄视频| 日本欧美视频一区| 欧美少妇被猛烈插入视频| 精品一品国产午夜福利视频| www.熟女人妻精品国产| 深夜精品福利| 久久韩国三级中文字幕| 在线天堂最新版资源| 亚洲欧美清纯卡通| 满18在线观看网站| 亚洲欧美日韩另类电影网站| 超色免费av| 啦啦啦啦在线视频资源| 中文字幕人妻熟女乱码| av在线app专区| 各种免费的搞黄视频| 国产色婷婷99| 国产高清国产精品国产三级| 日韩,欧美,国产一区二区三区| 91精品国产国语对白视频| 夫妻性生交免费视频一级片| 在现免费观看毛片| 亚洲av中文av极速乱| 青春草国产在线视频| 亚洲色图 男人天堂 中文字幕| 久久久久久久大尺度免费视频| 最新中文字幕久久久久| 天天躁狠狠躁夜夜躁狠狠躁| 色哟哟·www| 熟女av电影| 久久青草综合色| 看十八女毛片水多多多| 99久久精品国产国产毛片| 久久精品国产亚洲av高清一级| 欧美日韩精品网址| 大香蕉久久成人网| 九九爱精品视频在线观看| 女人精品久久久久毛片| 久久久a久久爽久久v久久| 亚洲精品久久久久久婷婷小说| 国产在视频线精品| 欧美老熟妇乱子伦牲交| av免费在线看不卡| 亚洲精品在线美女| 国产女主播在线喷水免费视频网站| 国产免费一区二区三区四区乱码| 人妻一区二区av| 欧美国产精品一级二级三级| av在线老鸭窝| 日韩伦理黄色片| 久久久精品区二区三区| 日韩av不卡免费在线播放| www日本在线高清视频| 亚洲成人av在线免费| 亚洲,一卡二卡三卡| 蜜桃在线观看..| 国产精品免费大片| 亚洲欧美色中文字幕在线| 最新中文字幕久久久久| 妹子高潮喷水视频| 国产成人精品久久二区二区91 | 成人二区视频| 日日撸夜夜添| 午夜免费观看性视频| 中国国产av一级| 国产在线免费精品| 免费日韩欧美在线观看| 欧美亚洲 丝袜 人妻 在线| 香蕉精品网在线| 亚洲av.av天堂| 日韩视频在线欧美| 国产日韩一区二区三区精品不卡| 精品酒店卫生间| 又黄又粗又硬又大视频| 国产精品蜜桃在线观看| 日日撸夜夜添| 欧美变态另类bdsm刘玥| 亚洲,一卡二卡三卡| 你懂的网址亚洲精品在线观看| 国产 精品1| 中文欧美无线码| 男人舔女人的私密视频| 国产成人精品婷婷| 在线精品无人区一区二区三| av电影中文网址| a级毛片在线看网站| 精品国产超薄肉色丝袜足j| 国产精品秋霞免费鲁丝片| 国产色婷婷99| 天堂8中文在线网| 亚洲成人av在线免费| 欧美日韩精品网址| av免费观看日本| 久久久a久久爽久久v久久| 男女国产视频网站| 久久久国产精品麻豆| 中文乱码字字幕精品一区二区三区| freevideosex欧美| 熟妇人妻不卡中文字幕| 国产男女内射视频| 久久精品国产亚洲av涩爱| 一区二区三区乱码不卡18| 久久99一区二区三区| 精品国产超薄肉色丝袜足j| 国产麻豆69| 精品一品国产午夜福利视频| 久久97久久精品| 天堂中文最新版在线下载| 国产乱来视频区| 国产一区二区在线观看av| 午夜福利乱码中文字幕| 黄色毛片三级朝国网站| 久久精品国产亚洲av高清一级| 丰满饥渴人妻一区二区三| 亚洲综合色惰| av视频免费观看在线观看| 最近中文字幕高清免费大全6| 国产av码专区亚洲av| 亚洲精品成人av观看孕妇| 少妇被粗大猛烈的视频| 天天影视国产精品| 天美传媒精品一区二区| 久久精品国产亚洲av高清一级| 久久久精品区二区三区| 亚洲一级一片aⅴ在线观看| 亚洲欧美成人精品一区二区| 欧美日韩国产mv在线观看视频| 视频在线观看一区二区三区| 乱人伦中国视频| www.熟女人妻精品国产| 波野结衣二区三区在线| 免费黄色在线免费观看| 日韩一卡2卡3卡4卡2021年| 国产av一区二区精品久久| 91精品国产国语对白视频| 亚洲精品aⅴ在线观看| 女人被躁到高潮嗷嗷叫费观| 久久久久国产一级毛片高清牌| 高清视频免费观看一区二区| 高清欧美精品videossex| 久久99蜜桃精品久久| 在线观看人妻少妇| 黄片播放在线免费| 在线天堂最新版资源| 丰满饥渴人妻一区二区三| 成人国产av品久久久| 最近最新中文字幕大全免费视频 | 最近2019中文字幕mv第一页| 最黄视频免费看| 精品视频人人做人人爽| 久久 成人 亚洲| 美女大奶头黄色视频| 18禁动态无遮挡网站| 2018国产大陆天天弄谢| 精品酒店卫生间| 777久久人妻少妇嫩草av网站| 久久久久精品久久久久真实原创| 久热这里只有精品99| 亚洲成人手机| 2022亚洲国产成人精品| 日本91视频免费播放| 亚洲欧洲精品一区二区精品久久久 | 亚洲视频免费观看视频| 一级毛片我不卡| 亚洲精品,欧美精品| 丝袜喷水一区| 久久99热这里只频精品6学生| 最近最新中文字幕大全免费视频 | 黄网站色视频无遮挡免费观看| 99久久中文字幕三级久久日本| 亚洲男人天堂网一区| 不卡av一区二区三区| 婷婷色综合大香蕉| 午夜福利乱码中文字幕| 精品少妇内射三级| 国产精品国产三级专区第一集| 日本91视频免费播放| 天美传媒精品一区二区| 成人毛片a级毛片在线播放| 在线亚洲精品国产二区图片欧美| 欧美另类一区| 丝袜美腿诱惑在线| 亚洲av综合色区一区| 国产一区亚洲一区在线观看| 国产探花极品一区二区| 午夜激情av网站| 性少妇av在线| 欧美人与善性xxx| 国产片特级美女逼逼视频| 精品国产乱码久久久久久小说| av视频免费观看在线观看| 久久精品国产综合久久久| 中文欧美无线码| 青春草视频在线免费观看| 男男h啪啪无遮挡| 欧美亚洲 丝袜 人妻 在线| 午夜影院在线不卡| 国产免费视频播放在线视频| 汤姆久久久久久久影院中文字幕| 欧美精品高潮呻吟av久久| 看免费av毛片| 久久免费观看电影| 午夜福利视频在线观看免费| av国产精品久久久久影院| 男女啪啪激烈高潮av片| 新久久久久国产一级毛片| 天美传媒精品一区二区| 国产精品 国内视频| 在线观看人妻少妇| 一区二区三区四区激情视频| 麻豆av在线久日| 欧美精品高潮呻吟av久久| 免费观看无遮挡的男女| freevideosex欧美| 免费少妇av软件| 嫩草影院入口| 一区二区三区精品91| 久久狼人影院| 久久午夜福利片| 波多野结衣一区麻豆| 赤兔流量卡办理| 欧美人与性动交α欧美软件| 国产欧美日韩综合在线一区二区| 亚洲欧美成人精品一区二区| 亚洲精品日本国产第一区| 极品人妻少妇av视频| 亚洲精品美女久久久久99蜜臀 | 不卡av一区二区三区| 人人妻人人澡人人看|