Pandangan tentang 26 Teknik Analisis Data Besar: Bahagian 1
Pandangan tentang 26 Teknik Analisis Data Besar: Bahagian 1
Sync Firefox adalah ciri penyegerakan pelayar yang membolehkan anda berkongsi data dan pilihan anda (seperti penanda halaman, sejarah, kata laluan, tab terbuka dan tambahan yang dipasang) di semua peranti anda. Mozilla juga menawarkan aplikasi "penyegerakan pelayan" untuk digunakan dengan Firefox Sync untuk pengguna dan perniagaan yang lebih memilih untuk menjadi tuan rumah data penyegerakan mereka sendiri. Artikel ini menunjukkan anda bagaimana untuk menyediakan Pelayar Sync Mozilla.
Kemas kini sistem:
sudo yum check-update
Untuk membina dan menjalankan Penyelaras Penyegerakan, anda perlu memasang pakej berikut:
Mecurial
sqlite3
git
Python 2.6.6
Python 2.6.6 virtualenv
Python 2.6.6 SetupTools
Python 2.6.6 Developer Tools
Pasang versi terkini Mercurial:
sudo yum install mercurial
Pasang alat dan perpustakaan pembangunan yang diperlukan:
yum groupinstall 'Development Tools' 'Development Libraries'
yum install tk-devel libjpeg-devel mysql-devel python-devel httpd-devel zlib-devel bzip2-devel
Pasang SQLite3:
sudo yum install sqlite
Pasang dan buat Python 2.6.6:
cd $home
sudo wget http://python.org/ftp/python/2.6.6/Python-2.6.6.tgz
sudo tar xzvf Python-2.6.6.tgz
cd $home/Python-2.6.6
sudo ./configure --prefix=/opt/python2.6 --enable-thread --enable-shared --enable-unicode=ucs4
sudo make
sudo make install
Kami akan mengklon semula repositori Git pelayan penyegerakan dan kemudian masukkan folder:
git clone https://github.com/mozilla-services/syncserver
cd syncserver
Jalankan arahan bina, yang akan memuat turun dependensi dan menyusun kod:
make build
Mulakan Pelayan Penyegerakan dan sahkan ia berfungsi dengan betul:
bin/paster serve development.ini
Anda akan melihat sesuatu seperti ini:
Starting server in PID 5952.
serving on 0.0.0.0:5000 view at http://127.0.0.1:5000
Konfigurasi pelayan penyegerakan sangat mudah, hanya terdapat beberapa parameter untuk menukar dalam fail konfigurasi ( ./syncserver.ini
).
Buka fail konfigurasi dengan editor teks kegemaran anda (contohnya nano ./syncserver.ini
).
[server:main]
use = egg:gunicorn
host = 0.0.0.0
port = 5000
workers = 1
timeout = 30
[app:main]
use = egg:syncserver
[syncserver]
# This must be edited to point to the public URL of your server,
# i.e. the URL as seen by Firefox.
public_url = http://localhost:5000/
# This defines the database in which to store all server data.
#sqluri = sqlite:////tmp/syncserver.db
# This is a secret key used for signing authentication tokens.
# It should be long and randomly-generated.
# The following command will give a suitable value on *nix systems:
#
# head -c 20 /dev/urandom | sha1sum
#
# If not specified then the server will generate a temporary one at startup.
#secret = INSERT_SECRET_KEY_HERE
# Set this to "false" to disable new-user signups on the server.
# Only request by existing accounts will be honoured.
# allow_new_users = false
# Set this to "true" to work around a mismatch between public_url and
# the application URL as seen by python, which can happen in certain reverse-
# proxy hosting setups. It will overwrite the WSGI environ dict with the
# details from public_url. This could have security implications if e.g.
# you tell the app that it's on HTTPS but it's really on HTTP, so it should
# only be used as a last resort and after careful checking of server config.
force_wsgi_environ = false
[browserid]
# Uncomment and edit the following to use a local BrowserID verifier
# rather than posting assertions to the mozilla-hosted verifier.
# Audiences should be set to your public_url without a trailing slash.
#backend = tokenserver.verifiers.LocalVerifier
#audiences = https://localhost:5000
# By default, syncserver will accept identity assertions issues by
# any server. You can restrict this by setting the below to a list
# of allowed issuer domains.
#allowed_issuers = www.mysite.com myfriendsdomain.org
Alamat pelayan anda mesti ditentukan melalui parameter public_url
:
public_url = http://fsync.example.com
Nota : nilai lalai public_url
, http://localhost:5000/
, akan bekerja untuk tujuan ujian pada mesin tempatan anda.
Kami akan melepaskan sqluri
pilihan dan meletakkan lokasi, atau URI
, yang membolehkan pelayan menghubungkan pangkalan data dan menyimpan maklumatnya:
sqluri = sqlite:////path/to/database/file.db
Jika anda ingin menggunakan jenis DB lain:
sqluri = pymysql://username:[email protected]/sync
Untuk secret
parameter, kami akan menghasilkan kunci rahsia untuk token pengesahan:
head -c 20 /dev/urandom | sha1sum
Uncomment barisan parameter rahsia dan kemudian salin / tampal rentetan yang dikembalikan ke dalam parameter rahasia:
secret = db8a203aed5fe3e4594d4b75990acb76242efd35
Catatan : Sekiranya anda tidak memasukkan apa-apa dalam parameter ini, pelayan akan menghasilkannya tetapi akan berbeza setiap kali pelayan dimulakan semula.
Tanggalkan allow\_new\_users
parameter dan tetapkan true
untuk membolehkan akaun kami menyambung ke pelayan kami untuk pertama kalinya:
allow_new_users = true
Kami kemudian akan menyuarakan audiences
parameter dan meletakkan perkara yang sama seperti public_uri
parameter:
audiences = http://fsync.example.com
Akhirnya, tambahkan baris berikut di hujung fail anda:
forwarded_allow_ips = *
Talian ini akan membantu anda mengelakkan mesej ralat dan masalah kebenaran.
Untuk memulakan pelayan penyegerakan, anda boleh menggunakan salah satu arahan berikut:
./path/to/syncserver/local/bin/gunicorn --threads 4 --paste /path/to/syncserver/syncserver.ini &
Ini membolehkan anda memilih lokasi fail konfigurasi; serta meletakkan hujah --threads 4
, yang membolehkan memberikan lebih kuasa kepada pelayan sinkronisasi.
Untuk memulakan pelayan setiap kali but contoh anda, anda boleh menambah baris berikut ke crontab anda dengan menaip crontab -e
perintah:
@reboot ./path/to/syncserver/local/bin/gunicorn --paste /path/to/syncserver/syncserver.ini &
Anda boleh menggunakan pelayan web yang berbeza yang serasi dengan WSGI
protokol. Sebagai contoh:
Nginx
dengan uWSGI.Apache
digabungkan dengan mod_wsgi.Untuk Nginx, anda perlu menggunakan proksi terbina dalam Nginx seperti yang ditunjukkan di bawah:
server {
listen 80;
server_name fsync.example.com;
location / {
proxy_set_header Host $http_host;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Real-IP $remote_addr;
proxy_redirect off;
proxy_read_timeout 120;
proxy_connect_timeout 10;
proxy_pass http://127.0.0.1:5000/;
}
}
Pengguna Nginx hanya boleh menggunakan soket WSGI sahaja.
Pasang uWSGI
melalui Pip:
pip install uwsgi
Pasang uWSGI
dengan memuat turun tarball sumber:
wget https://projects.unbit.it/downloads/uwsgi-latest.tar.gz
tar zxvf uwsgi-latest.tar.gz
cd <dir>
make
Catatan : Selepas pembuatan, anda akan mempunyai uwsgi
binari di direktori semasa.
Setelah dipasang, mulakannya dengan pilihan berikut:
uwsgi --plugins python27 --manage-script-name \
--mount /<location>=/path/to/syncserver/syncserver.wsgi \
--socket /path/to/uwsgi.sock
Kemudian gunakan konfigurasi Nginx berikut:
location /<location>/ {
include uwsgi_params;
uwsgi_pass unix:/path/to/uwsgi.sock;
}
Pasang mod_wsgi
:
apt-get install libapache2-mod-wsgi
Kemudian gunakan vhost berikut:
<VirtualHost *:80>
ServerName sync.example.com
DocumentRoot /path/to/syncserver
WSGIProcessGroup sync
WSGIDaemonProcess sync user=sync group=sync processes=2 threads=25 python-path=/path/to/syncserver/local/lib/python2.7/site-packages/
WSGIPassAuthorization On
WSGIScriptAlias / /path/to/syncserver/syncserver.wsgi
CustomLog /var/log/apache2/sync.example.com-access.log combined
ErrorLog /var/log/apache2/sync.example.com-error.log
</VirtualHost>
Sebaik sahaja pelayan telah dipasang dan dikonfigurasi, anda boleh mengkonfigurasi klien Firefox desktop untuk bercakap dengan Server Penyegerakan anda yang baru. Sebelum memulakan, jika anda sudah tersambung ke Firefox Sync Servers, anda mesti log keluar. Jika tidak, sambungan ke pelayan baru mungkin tidak berfungsi.
Pertama, buka tab baru dan masukkan alamat berikut:
about:config
Di bar carian, masukkan identity.sync.tokenserver.uri
dan ubah nilainya ke URL pelayan anda dengan jalan token/1.0/sync/1.5
:
http://sync.example.com/token/1.0/sync/1.5
Pandangan tentang 26 Teknik Analisis Data Besar: Bahagian 1
Ramai daripada anda tahu Switch akan keluar pada Mac 2017 dan ciri baharunya. Bagi yang tidak tahu, kami telah menyediakan senarai ciri yang menjadikan 'Tukar' sebagai 'gajet yang mesti ada'.
Adakah anda menunggu gergasi teknologi memenuhi janji mereka? semak apa yang masih belum dihantar.
Baca blog untuk mengetahui lapisan berbeza dalam Seni Bina Data Besar dan fungsinya dengan cara yang paling mudah.
Baca ini untuk mengetahui cara Kecerdasan Buatan semakin popular di kalangan syarikat berskala kecil dan cara ia meningkatkan kebarangkalian untuk menjadikan mereka berkembang dan memberikan pesaing mereka kelebihan.
CAPTCHA telah menjadi agak sukar untuk diselesaikan oleh pengguna dalam beberapa tahun kebelakangan ini. Adakah ia dapat kekal berkesan dalam pengesanan spam dan bot pada masa hadapan?
Apabila Sains Berkembang pada kadar yang pantas, mengambil alih banyak usaha kita, risiko untuk menundukkan diri kita kepada Ketunggalan yang tidak dapat dijelaskan juga meningkat. Baca, apakah makna ketunggalan bagi kita.
Apakah teleperubatan, penjagaan kesihatan jauh dan impaknya kepada generasi akan datang? Adakah ia tempat yang baik atau tidak dalam situasi pandemik? Baca blog untuk mencari paparan!
Anda mungkin pernah mendengar bahawa penggodam memperoleh banyak wang, tetapi pernahkah anda terfikir bagaimana mereka memperoleh wang seperti itu? Mari berbincang.
Baru-baru ini Apple mengeluarkan macOS Catalina 10.15.4 kemas kini tambahan untuk menyelesaikan masalah tetapi nampaknya kemas kini itu menyebabkan lebih banyak masalah yang membawa kepada pemusnahan mesin mac. Baca artikel ini untuk mengetahui lebih lanjut