在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 問答
笑浮塵 回答

我的方案是封裝一下 labels 將其替換成 Object, libraryService.labelsArry 封裝成
Object 數(shù)組

{
   text:'test',
   selected: false
}

然后在 span 上添加一個 class ,由 selected 決定

html:
<span *ngFor="let labels of libraryService.labelsArry" [class.selected]="labels.selected"   (click)="chooseLabel(labels)"  >{{labels.text}} </span>

css:

  .selected{
      color : red;
  }


ts:
chooseLabels(item){
   item.selected=!item.selected;
}

祈歡 回答

一直使用的是alpine只因為它小, 主要來做PHP的環(huán)境.

綰青絲 回答

點最后一個按鈕

尐懶貓 回答

下次記得把原始查詢也發(fā)出來,我們看著更方便些。從執(zhí)行計劃來反推,查詢大約是

db.webDevice.find({
    lid: {
        $in: [
            "40CnwyHkVmnA9kbScMLNLneaxuS4Tcj",
            "140CnwyHkVmnA9kbScMLNLneaxuS4Tcj"
        ]
    }
}).sort({createTime: -1}).limit(1);

因為命中索引,這個查詢獲取數(shù)據(jù)的速度實際上比較快,你也提到在一段時間內(nèi)第二次查詢就快了,這是一個很明顯的特點,代表內(nèi)存不足。MongoDB和其他數(shù)據(jù)庫一樣,都會使用空閑內(nèi)存緩沖索引和數(shù)據(jù),當(dāng)內(nèi)存不足時就會使用LRU算法清理舊數(shù)據(jù)換入新數(shù)據(jù)再繼續(xù)查詢。因為這個過程涉及到磁盤數(shù)據(jù)交換,速度會大大降低。發(fā)生這種情況有一個特點,就是一段時間內(nèi)第二次執(zhí)行時速度就快了(因為數(shù)據(jù)已經(jīng)在內(nèi)存中)。但是如果過一段時間再執(zhí)行,速度又會變慢(因為又被換出內(nèi)存了)。所以你的情況實際上就是受限于硬件。
既然如此最直接的解決辦法就是:

  1. 使用更快的硬盤;
  2. 使用更大的內(nèi)存;

如果不能從硬件方面解決,有一點可以嘗試就是用CPU換內(nèi)存。做法是盡可能調(diào)小cacheSizeGB(是的沒錯,是調(diào)?。?。空閑出來的內(nèi)存操作系統(tǒng)會用來緩沖磁盤數(shù)據(jù),而磁盤數(shù)據(jù)是經(jīng)過壓縮的,體積更小,因此可以緩沖更多數(shù)據(jù)到內(nèi)存中。但作為交換,在使用這些數(shù)據(jù)時需要經(jīng)過CPU再進行一次解壓從而額外消耗CPU。即使這樣,效果也比從磁盤讀取要好很多。整個過程是自動進行的,你需要做的只是調(diào)小cacheSizeGB。
這種做法可以在一定程度上緩解內(nèi)存不足的問題,但不是萬能的:

  • 首先它會增加CPU消耗,如果你的系統(tǒng)本身已經(jīng)沒有剩余的CPU資源,這種做法就不合適;
  • 其次受制于壓縮率,這樣做之后內(nèi)存能容納的數(shù)據(jù)并不會比以前多很多,所以并不是萬能的;

補充回答

基于你的新的疑問,以下幾點補充:

疑問1: 按照你說的方式調(diào)小cacheSizeGB,應(yīng)該怎么調(diào)整比較合理

我在上面有提到,這樣做的效果有限,是受制于壓縮率的限制。所以多容納的數(shù)據(jù)實際就是壓縮的數(shù)據(jù)。比如1G的內(nèi)存能放多少數(shù)據(jù)?

  • 如果不壓縮(壓縮率100%),1G內(nèi)存能放1GB數(shù)據(jù);
  • 如果壓縮率90%,1G內(nèi)存可以放10/9GB~=1.11數(shù)據(jù);
  • 如果壓縮率80%,1G內(nèi)存可以放10/8 = 1.25GB數(shù)據(jù);
  • 以此類推……

所以調(diào)到多少,其實要看你想往內(nèi)存里放多少數(shù)據(jù),而這往往是一個不確定的數(shù)值。這里會有另外一個概念叫做工作集(working set),就是你經(jīng)常用到的那些數(shù)據(jù)。比如你的數(shù)據(jù)庫共有100GB數(shù)據(jù),但是你經(jīng)常用到的部分只有10GB,那么你的內(nèi)存只要能裝下10GB數(shù)據(jù),應(yīng)用在大部分時候就可以非???,剩下的情況忽略就好了。
基于上面這些分析,你應(yīng)該可以算一下,你的工作集有多大,數(shù)據(jù)壓縮率有多大,那么需要把cacheSizeGB調(diào)到多小才能容納下工作集(又或者調(diào)到多小都不可能容納下工作集)。你的情況是內(nèi)存不足CPU空閑,所以如果懶得算,直接把cacheSizeGB調(diào)到最小值就好了。

疑問2: config只用了1.5GB內(nèi)存(限制了CacheSizeGB3GB).可以說明索引都加載到了內(nèi)存中嗎?

這說明config數(shù)據(jù)庫(元數(shù)據(jù))的索引和數(shù)據(jù)都加載到內(nèi)存中了。注意數(shù)據(jù)的索引肯定是在shard中,與config無關(guān)。而且大頭是在shard上面。
順便提一下,如果不是實驗?zāi)康?,根本沒必要分這么多片。因為在一臺機器上分再多片,硬件資源也只有這么多,對于性能沒有什么意義,反而還會有額外的傳輸開銷。

疑問3: mongodb remove數(shù)據(jù)后,查詢卻越來越慢是什么情況?

remove之后跟查詢沒有本質(zhì)上的聯(lián)系,可能只是湊巧發(fā)生在一起。如果你有足夠的證據(jù)覺得這兩者確實有聯(lián)系,請另開問題描述清楚問題的上下文以及你發(fā)現(xiàn)的情況,必要的時候也可以求助于MongoDB JIRA。如果一定要做一個無根據(jù)的猜測,我覺得可能是remove時導(dǎo)致熱數(shù)據(jù)被換出內(nèi)存(注意remove也需要先找到滿足條件的數(shù)據(jù)然后才能刪除),引起后面的查詢需要重新從磁盤上加載數(shù)據(jù)造成的。

撥弦 回答

mac環(huán)境的話,可以用richxerox,配合BeautifulSoup模塊,代碼如下

from richxerox import *
from bs4 import BeautifulSoup

soup = BeautifulSoup(pasteboard.get_contents(format='html'),'lxml')
links = [i.attrs['href'] for i in soup.find_all('a')]
print(links)
蔚藍色 回答

clipboard.png

事件發(fā)生時是會發(fā)生以上的步驟/

而事件委托是 委托給他的父級來觸發(fā)來達到的效果/
??!如果好多個動態(tài)元素都用同一個父元素來做事件代理,那么后面的事件會覆蓋掉前面父元素代理的事件。

孤客 回答

這有開源的同stackoverflow & segmentfault同款, 真的感興趣的話自己打開看看吧

https://github.com/ASKBOT

逗婦乳 回答

因為你用了flask-sqlalchemy擴展,而且你新開了一個線程執(zhí)行test方法,這個線程已經(jīng)脫離了 Flask app 的應(yīng)用上下文,如果非要按照你上面的例子的話,可以這樣修改

def test():
    time.sleep(20)
    with app.app_context():
        p = Plan.query.get(1)
    print p.planname

另外,你的思路沒錯,但是一個通用的解決辦法是使用Celery將你那個耗時的任務(wù)異步執(zhí)行。

@celery.task
def test():
    p = Plan.query.get(1)
    print p.planname
    return p

@app.route('/')
def index():
    task = test.delay()  #: 異步執(zhí)行
    return "hello world"

具體CeleryFlask的搭配可以自己網(wǎng)上查查

我不懂 回答

我也遇到樓主的問題了,百度到這里來的。
情況是只在safari瀏覽器中出現(xiàn)這個問題。
搜了下插件的代碼,發(fā)現(xiàn)了問題所在。

unyson/framework/extensions/shortcodes/shortcodes/section/static.php 21行左右

global $is_safari;

if ($is_safari) { 
        wp_enqueue_script('youtube-iframe-api', 'https://www.youtube.com/iframe_api'); 
    }

注釋掉就好了。

影魅 回答
  1. 你使用的‘react’文件 最后使用 module.exports = React;
  2. 所以需要使用 import React from 'react';
  3. 要是你想使用 react 的話 ,可以使用 as 對導(dǎo)出的React 重命名。
  4. 詳細(xì)可參考es6 module
逗婦惱 回答

obj2轉(zhuǎn)化為Json字符串的值和obj1中obj1.children.children轉(zhuǎn)化為json字符串的值不一樣,console一下即可

九年囚 回答

不會canvas。
個數(shù)不固定,參數(shù)改成數(shù)組不就好了

arr = [
  {
    id:'111',
    info: ''
  },
  {
    id:'222',
    info: ''// 不需要提示就不寫
  },
  ...
]
function highLight (arr) {
  $('#overlay').show();
  arr.forEach(function (item) {
    id = item.divId
    info = item.info
    // 然后做你原來的操作
  }) 
}
厭惡我 回答

table不是綁定一個data嗎,通常來說修改data,table就會自己重新渲染。同理,你在初始化的時候,讓data = [],然后點擊添加的時候push一個初始化的對象進去,例如push一個{name:'1',age:0}

有你在 回答

@felix 我把來自于felix的評論分享一下吧。跟上面的幾個大神說的都是一樣的,但是他貼了個官方的文檔,所以可能會更清晰完美一些。還是謝謝上面的幾個大神的幫助。下面是答案。
參見于gcc官方文檔 可以知道,這是一個C99的特性,可以使用變量名來定義數(shù)組長度,但是對于C++而言是一個可選特性。
另外,在陳浩的酷客發(fā)現(xiàn)了這么一篇文章,對于理解數(shù)組亂七八糟的東西還是挺有幫助的。謝謝各位。

有點壞 回答

這個只針對Node.js的項目使用babel來編譯的情況,如果是寫前端項目(用webpack打包)的話,就可以無視這個問題了。

因為babel編譯es6到es5的過程中,babel-plugin-transform-runtime這個插件會自動polyfill es5不支持的特性,這些polyfill包就是在babel-runtime這個包里,所以babel-runtime需要安裝在dependency而不是devDependency。

dependency和devDependency應(yīng)該能明白吧。假如一個用戶npm install 了你發(fā)布在npm上的一個包,他只會安裝這個包的dependency依賴,devDependency是不會安裝的,那么此時假如babel-runtime是安裝在devDependency的話,有些polyfill就會找不到了。

至于這兩個包有什么區(qū)別,字面意思就能看出來,一個是轉(zhuǎn)化的包(插件),一個是充滿polyfill的包。

鹿惑 回答

你先看下結(jié)束的分號是不是英文的分號,以及return后的那個分號之后的那個反引號去掉

臭榴蓮 回答

看場景:

  1. 日志是否需要實時分析?

如果不需要實時分析,可以用文件形式,固定格式存儲,然后進行離線分析。

  1. 是否一直都需要所有日志?

如果不需要所有日志,只需要部分日志,那么可以給一定時間之前的日志刪掉。

現(xiàn)在一般的做法都是,近期日志存在mongodb這種數(shù)據(jù)庫中,長期日志存儲在大數(shù)據(jù)平臺。