Pandangan tentang 26 Teknik Analisis Data Besar: Bahagian 1
Pandangan tentang 26 Teknik Analisis Data Besar: Bahagian 1
dotCMS adalah sistem pengurusan kandungan kelas perusahaan sumber terbuka yang ditulis di Jawa. Ini mengandungi hampir setiap ciri yang diperlukan untuk membuat laman web untuk perniagaan anda. Ini menyediakan RESTful API untuk diintegrasikan dengan perkhidmatan lain seperti CRM, aplikasi mudah alih, dan banyak lagi. Ia menggunakan Elasticsearch untuk pengindeksan kandungan sebenar dan Redis untuk melaksanakan cache pelbagai peringkat.
Artikel ini ditulis untuk dotCMS 4.2.2, namun arahan yang disediakan mungkin berfungsi untuk versi yang lebih baru juga.
Untuk tutorial ini, kami akan menggunakan 192.168.0.1
sebagai alamat IP awam dan cms.example.com
sebagai nama domain menunjuk ke arah Vultr. Sila pastikan untuk menggantikan semua kejadian contoh nama domain dan alamat IP awam dengan yang sebenarnya.
Kemas kini sistem asas anda menggunakan panduan Cara Mengemas kini CentOS 7 . Apabila sistem anda telah dikemas kini, teruskan untuk memasang Java.
OpenJDK dapat dipasang dengan mudah kerana pakej ini tersedia di repositori YUM lalai.
sudo yum -y install java-1.8.0-openjdk-devel
Sekiranya Java dipasang dengan betul, maka anda akan dapat mengesahkan versinya.
java -version
Anda akan mendapat output yang serupa.
[user@vultr ~]$ java -version
openjdk version "1.8.0_151"
OpenJDK Runtime Environment (build 1.8.0_151-b12)
OpenJDK 64-Bit Server VM (build 25.151-b12, mixed mode)
Sebelum kita dapat melangkah lebih jauh, kita perlu mengatur pemboleh ubah JAVA_HOME
dan JRE_HOME
persekitaran. Cari jalan mutlak Java yang dapat dilaksanakan di sistem anda.
readlink -f $(which java)
Anda akan melihat output yang serupa.
[user@vultr ~]$ readlink -f $(which java)
/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.151-1.b12.el7_4.x86_64/jre/bin/java
Sekarang, tetapkan pemboleh ubah JAVA_HOME
dan JRE_HOME
persekitaran mengikut laluan direktori Java.
echo "export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.151-1.b12.el7_4.x86_64" >> ~/.bash_profile
echo "export JRE_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.151-1.b12.el7_4.x86_64/jre" >> ~/.bash_profile
Jalankan bash_profile
fail.
source ~/.bash_profile
Sekarang anda boleh menjalankan echo $JAVA_HOME
arahan untuk memastikan pembolehubah persekitaran ditetapkan.
[user@vultr ~]$ echo $JAVA_HOME
/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.151-1.b12.el7_4.x86_64
Secara lalai, dotCMS dikonfigurasi untuk menggunakan mesin pangkalan data H2. Enjin pangkalan data H2 adalah enjin pangkalan data berasaskan fail rata. Tidak digalakkan digunakan dalam pengeluaran. Dalam tutorial ini, kita akan menggunakan pelayan PostgreSQL untuk menyimpan pangkalan data dotCMS.
PostgreSQL adalah sistem pangkalan data objek hubungan dan dikenali untuk kestabilan dan kelajuannya. Tambahkan repositori dari keluaran terakhir PostgreSQL ke dalam sistem.
sudo yum -y install https://download.postgresql.org/pub/repos/yum/10/redhat/rhel-7-x86_64/pgdg-centos10-10-1.noarch.rpm
Pasang pelayan pangkalan data PostgreSQL.
sudo yum -y install postgresql10-server postgresql10-contrib postgresql10
Inisialkan pangkalan data.
sudo /usr/pgsql-10/bin/postgresql-10-setup initdb
Mulakan pelayan PostgreSQL dan dayakannya secara automatik pada masa boot.
sudo systemctl start postgresql-10
sudo systemctl enable postgresql-10
Tukar kata laluan untuk pengguna PostgreSQL lalai.
sudo passwd postgres
Masuk sebagai pengguna PostgreSQL lalai.
sudo su - postgres
Buat pengguna PostgreSQL baru untuk dotCMS.
createuser dotcms
PostgreSQL menyediakan psql
shell untuk menjalankan pertanyaan di pelayan pangkalan data. Beralih ke shell PostgreSQL.
psql
Tetapkan kata laluan untuk pengguna yang baru dibuat untuk pangkalan data dotCMS.
ALTER USER dotcms WITH ENCRYPTED password 'DBPassword';
Ganti kata laluan pengguna pangkalan data DBPassword
dengan kata laluan yang selamat. Buat pangkalan data baru untuk pemasangan dotCMS.
CREATE DATABASE dotcms OWNER dotcms;
Keluar dari psql
cangkerang.
\q
Beralih kepada sudo
pengguna.
exit
Muat turun arkib dotCMS.
wget https://dotcms.com/physical_downloads/release_builds/dotcms_4.2.2.tar.gz
Anda sentiasa boleh mendapatkan pautan ke aplikasi versi terbaru di halaman muat turun dotCMS .
Buat direktori baru untuk menyimpan fail dotCMS dan ekstrak ke dalamnya.
sudo mkdir /opt/dotcms
sudo tar -zxf dotcms*.tar.gz -C /opt/dotcms
Buka fail konfigurasi pangkalan data.
cd /opt/dotcms
sudo nano dotserver/tomcat-*/webapps/ROOT/META-INF/context.xml
Cari H2
blok.
<!-- H2 -->
<Resource name="jdbc/dotCMSPool" auth="Container"
...
validationQuery="SELECT 1" testOnBorrow="true" testWhileIdle="true" />
Komen keseluruhannya H2
dengan menggantikan pembatas komentar -->
dari permulaan bahagian hingga ke bahagian akhir. Ia seperti yang berikut.
<!-- H2
<Resource name="jdbc/dotCMSPool" auth="Container"
...
validationQuery="SELECT 1" testOnBorrow="true" testWhileIdle="true" />
-->
Tanggalkan bahagian PostgreSQL dengan membuang pembatas komen -->
dari akhir bahagian dan meletakkannya di pembungkus atas POSTGRESQL
. Juga, cari username=
dan password=
dan gantikan nilai sedia ada dengan nama pengguna dan kata laluan pengguna pangkalan data PostgreSQL anda. Sekiranya anda telah menggunakan nama pangkalan data selain dotcms
, maka anda perlu menukar nama pangkalan data url=
. Sebaik sahaja dikonfigurasikan, blok PostgreSQL dalam fail sepatutnya seperti berikut.
<!-- POSTGRESQL -->
<Resource name="jdbc/dotCMSPool" auth="Container"
type="javax.sql.DataSource"
factory="org.apache.tomcat.jdbc.pool.DataSourceFactory"
driverClassName="org.postgresql.Driver"
url="jdbc:postgresql://localhost/dotcms"
username="dotcms" password="DBPassword" maxTotal="60" maxIdle="10" maxWaitMillis="60000"
removeAbandonedOnBorrow="true" removeAbandonedOnMaintenance="true" removeAbandonedTimeout="60" logAbandoned="true"
timeBetweenEvictionRunsMillis="30000" validationQuery="SELECT 1" testOnBorrow="true" testWhileIdle="true" />
Berikan kebenaran pelaksanaan untuk semua fail yang boleh dilaksanakan.
sudo chmod 755 ./bin/*.sh
sudo chmod 755 dotserver/tomcat-*/bin/*.sh
dotCMS kini dipasang pada pelayan anda. Untuk segera menjalankan aplikasi, laksanakan perkara berikut.
cd /opt/dotcms
sudo bin/startup.sh
Anda akan melihat output berikut apabila pelayan berjaya dimulakan.
[user@vultr dotcms]$ sudo bin/startup.sh
Using DOTCMS_HOME = /opt/dotcms/dotserver/tomcat-8.0.18/webapps/ROOT
Using DOTSERVER = dotcms
Using CATALINA_PID = /tmp/dotcms.pid
Using JAVA_OPTS = -Djava.awt.headless=true -Xverify:none -Dfile.encoding=UTF8 -server -XX:+DisableExplicitGC -XX:MaxMetaspaceSize=512m -Xmx1G -XX:+UseG1GC -javaagent:/opt/dotcms/dotserver/tomcat-8.0.18/webapps/ROOT/WEB-INF/lib/byte-buddy-agent-1.6.12.jar -Ddotserver=dotcms
Using CATALINA_BASE: /opt/dotcms/dotserver/tomcat-8.0.18
Using CATALINA_HOME: /opt/dotcms/dotserver/tomcat-8.0.18
Using CATALINA_TMPDIR: /opt/dotcms/dotserver/tomcat-8.0.18/temp
Using JRE_HOME: /
Using CLASSPATH: /opt/dotcms/dotserver/tomcat-8.0.18/bin/bootstrap.jar:/opt/dotcms/dotserver/tomcat-8.0.18/bin/tomcat-juli.jar
Using CATALINA_PID: /tmp/dotcms.pid
Tomcat started.
Perintah di atas akan memulakan pelayan web Tomcat untuk melayani aplikasi di port 8080
. Untuk memeriksa sama ada laman web dotCMS berfungsi, izinkan pelabuhan yang diperlukan 8080
melalui sistem firewall.
sudo firewall-cmd --zone=public --add-port=8080/tcp --permanent
sudo firewall-cmd --reload
Buka penyemak imbas kegemaran anda dan semak imbas http://192.168.0.1:8080
. Anda harus melihat bahawa aplikasi sedang menjalankan laman web demo. Sekiranya anda tidak melihat laman web anda, sila tunggu kerana permulaan pertama pelayan dotCMS memerlukan beberapa minit kerana ia menulis data ke dalam pangkalan data PostgreSQL dan membina cache. Anda juga boleh menyemak log permulaan.
tail -n 1000 -f /opt/dotcms/dotserver/tomcat-*/webapps/ROOT/dotsecure/logs/dotcms.log
Pelayan dotCMS boleh dimulakan secara langsung menggunakan skrip permulaan yang disediakan dalam pakej pemasang. Untuk kemudahan, anda harus menyediakan fail unit Systemd untuk pelayan dotCMS. Ini akan memastikan bahawa pelayan aplikasi dimulakan secara automatik pada sistem dan kerosakan semula.
Hentikan pelayan dotCMS menggunakan skrip penutupan.
sudo bin/shutdown.sh
Buat pengguna yang tidak bernasib baik untuk menjalankan pelayan dotCMS, atas alasan keselamatan.
sudo adduser -d /opt/dotcms -s /sbin/nologin dotcms
Menyediakan pemilikan fail ke pengguna dotCMS.
sudo chown -R dotcms:dotcms /opt/dotcms
Buat perkhidmatan Systemd baru.
sudo nano /etc/systemd/system/dotcms.service
Isi fail.
[Unit]
Description=dotCMS service
After=syslog.target network.target
[Service]
Type=forking
ExecStart=/opt/dotcms/bin/startup.sh
ExecStop=/opt/dotcms/bin/shutdown.sh
User=dotcms
Group=dotcms
Restart=always
[Install]
WantedBy=multi-user.target
Mulakan aplikasi dan aktifkannya secara automatik pada masa boot.
sudo systemctl start dotcms
sudo systemctl enable dotcms
Pastikan perkhidmatan berjalan.
sudo systemctl status dotcms
Secara lalai, pelayan dotCMS mendengar pada port 8080
. Kami akan mengkonfigurasi Nginx sebagai proksi terbalik supaya aplikasi boleh diakses melalui standard HTTP
dan HTTPS
port. Kami juga akan mengkonfigurasi Nginx untuk menggunakan SSL yang dihasilkan dengan Let's Encrypt SSL percuma.
Pasang pelayan web Nginx.
sudo yum -y install nginx
Mulakan pelayan web dan aktifkannya secara automatik pada masa boot.
sudo systemctl start nginx
sudo systemctl enable nginx
Pasang Certbot, yang merupakan aplikasi pelanggan untuk Let's Encrypt CA.
sudo yum -y install certbot
Sebelum anda dapat meminta sijil, anda perlu membenarkan port 80
dan 443
atau standard HTTP
dan HTTPS
perkhidmatan melalui firewall. Juga, keluarkan port 8080
dari senarai pengecualian firewall kerana tidak diperlukan lagi.
sudo firewall-cmd --zone=public --remove-port=8080/tcp --permanent
sudo firewall-cmd --zone=public --add-service=http --permanent
sudo firewall-cmd --zone=public --add-service=https --permanent
sudo firewall-cmd --reload
Nota: Untuk mendapatkan sijil dari Let's Encrypt CA, domain yang mana sijil yang akan dihasilkan mesti ditujukan ke pelayan. Sekiranya tidak, buat perubahan yang diperlukan pada rekod DNS domain dan tunggu DNS disebarkan sebelum membuat permintaan sijil lagi. Certbot memeriksa pihak berkuasa domain sebelum menyediakan sijil.
Menjana sijil SSL.
sudo certbot certonly --webroot -w /usr/share/nginx/html -d cms.example.com
Sijil yang dijana mungkin disimpan di dalam /etc/letsencrypt/live/cms.example.com/
. Mari Sulitkan sijil tamat dalam 90 hari, oleh itu disarankan untuk mengatur pembaharuan sijil secara automatik menggunakan pekerjaan Cron.
Buka fail kerja cron.
sudo crontab -e
Tambahkan garisan berikut pada akhir fail.
30 5 * * * /usr/bin/certbot renew --quiet
Pekerjaan cron di atas akan dijalankan setiap hari pada jam 5:30 pagi. Sekiranya sijil perlu tamat tempoh, ia akan diperbaharui secara automatik.
Buat fail blok pelayan baru untuk laman web dotCMS.
sudo nano /etc/nginx/conf.d/cms.example.com.conf
Isi fail.
server {
listen 80;
server_name cms.example.com;
return 301 https://$host$request_uri;
}
server {
listen 443;
server_name cms.example.com;
ssl_certificate /etc/letsencrypt/live/cms.example.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/cms.example.com/privkey.pem;
ssl on;
ssl_session_cache builtin:1000 shared:SSL:10m;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers HIGH:!aNULL:!eNULL:!EXPORT:!CAMELLIA:!DES:!MD5:!PSK:!RC4;
ssl_prefer_server_ciphers on;
access_log /var/log/nginx/dotcms.access.log;
location / {
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_pass http://localhost:8080;
proxy_read_timeout 90;
proxy_redirect http://localhost:8080 https://cms.example.com;
}
}
Mulakan semula pelayan web Nginx supaya perubahan tersebut dapat berkuatkuasa.
sudo systemctl restart nginx
Aplikasi dotCMS kini dipasang pada pelayan anda untuk kegunaan pengeluaran. Akses papan pemuka pentadbiran pada alamat berikut.
https://cms.example.com/dotAdmin
Log masuk menggunakan akaun pentadbir permulaan, [email protected]
dan admin
. Tukar kata laluan lalai sebaik sahaja log masuk.
Tahniah, sistem pengurusan kandungan dotCMS kini dipasang di pelayan anda. Anda boleh mengubahsuai laman web demo atau mula membina laman web anda dari awal.
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