In 2019, a typical MongoDB 4.0 installs with data folder at C:\Program Files\MongoDB\Server\4.0\data with a service.
How to move \data to another bigger drive, say D drive?
1. services.msc, stop MongoDB service
2. Move all files from C:\Program Files\MongoDB\Server\4.0\data to D:\Program Files\MongoDB\Server\4.0\data
3. Edit C:\Program Files\MongoDB\Server\4.0\bin\mongod.cfg so that its dbPath starts a D: instead of C:
storage:
dbPath: D:\Program Files\MongoDB\Server\4.0\data
journal:
enabled: true
4. admin cmd.exe, run below
C:\Program Files\MongoDB\Server\4.0\bin>mongod --config "C:\Program Files\MongoD
B\Server\4.0\bin\mongod.cfg" --install
5. services.msc, start MongoDB service
Done!
2020年1月8日 星期三
2019年12月23日 星期一
2019年在Windows Server 2016上使用Redis + Python
Windows 上的安装
今天是2019年12月23日,首先去微软的网页
https://github.com/microsoftarchive/redis/releases
找到在2016年7月1日发布的3.2.100版本,下载
https://github.com/microsoftarchive/redis/releases/download/win-3.2.100/Redis-x64-3.2.100.msi
安装时候注意2点,第一级的勾选加入PATH,第二记住预设的Port是6379。
检查状态
C:\Program Files\Redis\redis-cli.exe
cmd.exe > redis-cli info
设定连线
redis.windows.conf
C:\Program Files\Redis\redis.windows.conf
bind 127.0.0.1 10.0.0.5
protected-mode yes
requirepass foobared
End
2019年12月3日 星期二
c++ unordered_map
#include <iostream>
#include <unordered_map>
class A{
public:
A(){}
~A(){}
A(const A& a){std::cout<<"copy constructor"<<'\n';}
void operator=(const A& a){std::cout<<"copy assignment"<<'\n';}
A(const A&& a){std::cout<<"move constructor"<<'\n';}
void operator=(const A&& a){std::cout<<"move assignment"<<'\n';}
};
void main() {
std::unordered_map<int, A> m;
for (int i=0; i<10; ++i) {
m[i] = A();
std::cout << i << ' ' << m.bucket_count() << '\n';
}
std::cout << m.size();
}
sadfsd
2019年10月31日 星期四
Progressive Web App Online Generator Splashscreens
1 Designer https://favicon.io/favicon-generator/
2 Convert to different resolution https://www.favicon-generator.org/
3 splash screen https://appsco.pe/developer/splash-screens
2 Convert to different resolution https://www.favicon-generator.org/
3 splash screen https://appsco.pe/developer/splash-screens
2019年9月27日 星期五
2019-09-27 iPhone 11 generation Change iTune Backup Directory
2019-09-27 iPhone 11 generation
Change iTune Backup Directory
mklink /J "%APPDATA%\Apple Computer\MobileSync\Backup" "D:\iTunesBackup"
Change iTune Backup Directory
mklink /J "%APPDATA%\Apple Computer\MobileSync\Backup" "D:\iTunesBackup"
2019年7月5日 星期五
My first PWA Progressive Web Application Google Part 04 Offline
主要參考:https://codelabs.developers.google.com/codelabs/your-first-pwapp/#4
之前做好的WebApp在Python Flask沒有運作時候首先會進入Loading畫面等待10秒圈圈旋轉了10次后進入全屏幕白色:
離綫時候爲了依靠Service Worker將Web Shell緩存,所以要在index.html注冊service-worker.js
而且要在service-worker.js寫明需要緩存的檔案,意思是說安裝之後就從打開static-v1緩存加入offline.html:
真正運行到addAll()時候,瀏覽器會在install安裝時候向服務器發送所有request,如果其中任何一個或以上的request失敗,那麽整個安裝將會失敗,因此整個流程可以保證安裝完畢之後的WebApp已經完整地緩存了一次。
這時候如果你遇到找不到luxon-1.11.4.js.map,那麽在Chrome的DevTool settings裏面,需要取消"Enable JavaScript source maps"以及"Enable CSS source maps"。
這時候如果看見http://127.0.0.1/service-worker.js下載出現錯誤,可能要加上favicon.ico。
這時候如果看見service-worker不能啓動,那麽需要確保service-worker.js的mime-type是application/javascript,而使用Flask要這樣寫send_from_directory("templates", “service-worker.js”, mimetype="application/javascript")。
這時候確保service worker activated and is running:
Service除了install之外,也可以增加activate listener,在activate的時候,如果當前cache的名稱與新的CACHE_NAME名稱不一樣,那麽就將當前的cache從caches移除: caches.delete(key)
這時候將CACHE_NAME從v1改爲v2重啓網頁服務器的話,會見到綠燈的Status #改變,并且看見以下console messages:
在寫好install及activate之後,最後要寫好fetch能夠讓cache真正工作,這裏大概意思是,請求模式如非轉頁的話就不需要緩存了;如果是轉頁的話就從網絡fetch進來,fetch有exception時候就catch出來處理,處理方法是無論請求什麽頁面也好,統一打開緩存指明的offline.html檔案,而offline.html可以是一個道歉畫面,或者是一個離綫小游戲,或者是一個離綫頁面:
現在無論使用本機Chrome或者Firefox都可以在沒有Flask運行情況下見到offline.html
sa
End
之前做好的WebApp在Python Flask沒有運作時候首先會進入Loading畫面等待10秒圈圈旋轉了10次后進入全屏幕白色:
離綫時候爲了依靠Service Worker將Web Shell緩存,所以要在index.html注冊service-worker.js
// CODELAB: Register service worker.
if ('serviceWorker' in navigator) {
window.addEventListener('load', () => {
navigator.serviceWorker.register('/service-worker.js')
.then((reg) => {
console.log('Service worker registered.', reg);
});
});
}
而且要在service-worker.js寫明需要緩存的檔案,意思是說安裝之後就從打開static-v1緩存加入offline.html:
self.addEventListener('install', (evt) => {
console.log('[ServiceWorker] Install');
// CODELAB: Precache static resources here.
evt.waitUntil(
caches.open('static-cache-v1').then((cache) => {
console.log('[ServiceWorker] Pre-caching offline page');
return cache.addAll(['/offline.html']);
})
);
self.skipWaiting();
});
真正運行到addAll()時候,瀏覽器會在install安裝時候向服務器發送所有request,如果其中任何一個或以上的request失敗,那麽整個安裝將會失敗,因此整個流程可以保證安裝完畢之後的WebApp已經完整地緩存了一次。
這時候如果你遇到找不到luxon-1.11.4.js.map,那麽在Chrome的DevTool settings裏面,需要取消"Enable JavaScript source maps"以及"Enable CSS source maps"。
這時候如果看見http://127.0.0.1/service-worker.js下載出現錯誤,可能要加上favicon.ico。
這時候如果看見service-worker不能啓動,那麽需要確保service-worker.js的mime-type是application/javascript,而使用Flask要這樣寫send_from_directory("templates", “service-worker.js”, mimetype="application/javascript")。
這時候確保service worker activated and is running:
Service除了install之外,也可以增加activate listener,在activate的時候,如果當前cache的名稱與新的CACHE_NAME名稱不一樣,那麽就將當前的cache從caches移除: caches.delete(key)
// CODELAB: Remove previous cached data from disk.
evt.waitUntil(
caches.keys().then((keyList) => {
return Promise.all(keyList.map((key) => {
if (key !== CACHE_NAME) {
console.log('[ServiceWorker] Removing old cache', key, 'new cache', CACHE_NAME);
return caches.delete(key);
}
}));
})
);
這時候將CACHE_NAME從v1改爲v2重啓網頁服務器的話,會見到綠燈的Status #改變,并且看見以下console messages:
在寫好install及activate之後,最後要寫好fetch能夠讓cache真正工作,這裏大概意思是,請求模式如非轉頁的話就不需要緩存了;如果是轉頁的話就從網絡fetch進來,fetch有exception時候就catch出來處理,處理方法是無論請求什麽頁面也好,統一打開緩存指明的offline.html檔案,而offline.html可以是一個道歉畫面,或者是一個離綫小游戲,或者是一個離綫頁面:
// CODELAB: Add fetch event handler here.
if (evt.request.mode !== 'navigate') {
// Not a page navigation, bail.
return;
}
evt.respondWith(
fetch(evt.request)
.catch(() => {
return caches.open(CACHE_NAME)
.then((cache) => {
return cache.match('offline.html');
});
})
);
現在無論使用本機Chrome或者Firefox都可以在沒有Flask運行情況下見到offline.html
sa
End
2019年7月4日 星期四
My first PWA Progressive Web Application Google Part 03 Manifest
主要參考:https://codelabs.developers.google.com/codelabs/your-first-pwapp/#3
manifest.json
網頁沒有manifest.json的時候,Chrome裏面的Application Manifest會顯示找不到manifest
在templates裏面增加manifest.json后,然後在index.html裏面加入后,Chrome會顯示裏面的資料:
Apple iOS
Safari目前再2019年7月的時候依然不支持manifest.json,網頁强行加到主畫面會產生很差的效果,包括缺乏常見的App圖示,而且打開之後沒有全畫面并且會見到Safari頂部網址欄及底部上下頁操作,明顯不像一個App。
因此在我們可以加入<meta>及"apple-mobile-web"相關的資料到index.html裏面:
當capable時候的特別之處在於,啓動WebApp后會進入standalone模式,不會顯示頂部網址欄,不會顯示底部上下頁等操控按鈕。而status-bar-style控制ios頂部顯示信號電信商wifi時間電量的部分,可以選填default的白底黑字、black的黑底白字,或者最進取的black-translucent的app底色白字:
上圖中的navbar的顔色在inline.css裏面設定了為#3f51b5,如果將body background從#ececec改成#3f51b5。改完css檔案之後safari很可能已經cache了舊版本的css檔案,那麽最好在index.html裏面加上<link href="/styles/inline.css?v=1">,WebApp做好了。
Theme Color
在Android Chrome裏面設定了theme-color可以讓status bar也顯示漂亮的顔色
End
manifest.json
網頁沒有manifest.json的時候,Chrome裏面的Application Manifest會顯示找不到manifest
在templates裏面增加manifest.json后,然後在index.html裏面加入后,Chrome會顯示裏面的資料:
<link rel="manifest" href="/manifest.json">
Apple iOS
Safari目前再2019年7月的時候依然不支持manifest.json,網頁强行加到主畫面會產生很差的效果,包括缺乏常見的App圖示,而且打開之後沒有全畫面并且會見到Safari頂部網址欄及底部上下頁操作,明顯不像一個App。
因此在我們可以加入<meta>及"apple-mobile-web"相關的資料到index.html裏面:
<!-- CODELAB: Add iOS meta tags and icons -->
<meta name="apple-mobile-web-app-capable" content="yes">
<meta name="apple-mobile-web-app-status-bar-style" content="black-translucent">
<meta name="apple-mobile-web-app-title" content="Weather PWA">
<link rel="apple-touch-icon" href="/images/icons/icon-152x152.png">
當capable時候的特別之處在於,啓動WebApp后會進入standalone模式,不會顯示頂部網址欄,不會顯示底部上下頁等操控按鈕。而status-bar-style控制ios頂部顯示信號電信商wifi時間電量的部分,可以選填default的白底黑字、black的黑底白字,或者最進取的black-translucent的app底色白字:
上圖中的navbar的顔色在inline.css裏面設定了為#3f51b5,如果將body background從#ececec改成#3f51b5。改完css檔案之後safari很可能已經cache了舊版本的css檔案,那麽最好在index.html裏面加上<link href="/styles/inline.css?v=1">,WebApp做好了。
Theme Color
在Android Chrome裏面設定了theme-color可以讓status bar也顯示漂亮的顔色
<!-- CODELAB: Add description here -->
<meta name="description" content="A sample weather app">
<!-- CODELAB: Add meta theme-color -->
<meta name="theme-color" content="#2F3BA2" />
End
訂閱:
文章 (Atom)
2007 to 2023 HP and Dell Servers Comparison
HP Gen5 to Gen11 using ChatGPT HP ProLiant Gen Active Years CPU Socket Popular HP CPUs Cores Base Clock Max RAM Capacity Comparable Dell ...
-
https://www.tutorialspoint.com/ Q Data Types There are a lot of data types in Q, including boolean byte short int long real float cha...
-
CME MDP 3.0 Market Data http://www.cmegroup.com/confluence/display/EPICSANDBOX/CME+MDP+3.0+Market+Data CME Market Data Platform has 3 ...
-
On CentOS 7, using yum install gives you cmake version 2.8.11 [root@thrift1 ~]# cat /etc/*release CentOS Linux release 7.2.1511 (Core) ...










