Wawasan tentang 26 Teknik Analisis Data Besar: Bagian 1
Wawasan tentang 26 Teknik Analisis Data Besar: Bagian 1
OroCRM adalah aplikasi Customer Relationship Manager (CRM) sumber terbuka dan gratis yang dibangun di atas OroPlatform. OroPlatform sepenuhnya dapat disesuaikan perangkat lunak platform aplikasi bisnis sumber terbuka. OroPlatform memberi Anda semua fitur yang diperlukan untuk membuat aplikasi yang disesuaikan. OroCRM dibangun menggunakan kerangka kerja PHP Symfony dan menyimpan datanya ke dalam server database MySQL / MariaDB. Ini adalah aplikasi CRM siap pakai perusahaan yang menyediakan banyak fitur. Ini juga terintegrasi dengan banyak aplikasi pihak ke-3 seperti Magento Store, MailChimp, Zendesk dll. Ini multibahasa dan memiliki antarmuka pengguna yang sepenuhnya responsif, yang memberi Anda kemampuan untuk mengelolanya menggunakan perangkat seluler juga.
Dalam tutorial ini, kita akan menggunakan crm.example.com
nama domain yang menunjuk ke server. Ganti semua kemunculan crm.example.com
dengan nama domain Anda yang sebenarnya.
Perbarui sistem basis Anda menggunakan panduan Cara Memperbarui CentOS 7 . Setelah sistem Anda diperbarui, lanjutkan untuk menginstal dependensi yang diperlukan.
OroCRM dapat diinstal pada server web produksi yang mendukung PHP. OroCRM mendukung semua versi PHP lebih besar dari 7.0. Dalam tutorial ini, kita akan menggunakan Nginx dengan PHP-FPM dan PHP 7.1.
Instal Nginx.
sudo yum -y install nginx
Mulai Nginx dan aktifkan untuk memulai secara otomatis saat boot.
sudo systemctl start nginx
sudo systemctl enable nginx
PHP 7 tidak tersedia dalam repositori YUM default, tetapi kita dapat menggunakan repositori Remi untuk mendapatkan dan menginstal build terbaru dari PHP 7. Pertama, tambahkan dan aktifkan repositori Remi.
sudo rpm -Uvh http://rpms.remirepo.net/enterprise/remi-release-7.rpm
sudo yum -y install yum-utils
sudo yum-config-manager --enable remi-php71
Instal versi terbaru PHP 7 bersama dengan modul PHP yang dibutuhkan oleh OroCRM.
sudo yum -y install php php-fpm php-ctype php-curl php-fileinfo php-gd php-intl php-json php-mbstring php-mcrypt php-mysql php-pcre php-simplexml php-tokenizer php-xml php-zip php-tidy php-soap php-opcache php-posix
Edit file konfigurasi PHP default.
sudo nano /etc/php.ini
Temukan baris berikut. Batalkan komentar dan buat perubahan seperti yang ditunjukkan.
date.timezone = Asia/Kolkata
;Replace "Asia/Kolkata" with your appropriate timezone
memory_limit = 512M
cgi.fix_pathinfo=0
Edit file konfigurasi PHP-FPM.
sudo nano /etc/php-fpm.d/www.conf
Secara default, PHP-FPM dikonfigurasikan untuk dijalankan dengan Apache dan untuk mendengarkan port 9000
. Kita perlu mengubah pengguna dan grup, serta file soket Unix yang akan dijalankannya. Temukan baris berikut dan buat perubahan yang diperlukan seperti yang ditunjukkan.
user = nginx
group = nginx
;listen = 127.0.0.1:9000
;Comment out or remove the above line and add the following line.
listen = /var/run/php-fpm/php-fpm.sock
listen.owner = nobody
listen.group = nobody
Mulai PHP-FPM dan aktifkan untuk memulai saat boot.
sudo systemctl start php-fpm
sudo systemctl enable php-fpm
Memberikan kepemilikan file soket PHP-FPM kepada pengguna Nginx.
sudo chown nginx:nginx /var/run/php-fpm/php-fpm.sock
MariaDB adalah garpu sumber terbuka MySQL. Instal MariaDB.
sudo yum -y install mariadb mariadb-server
Mulai MariaDB dan aktifkan untuk memulai secara otomatis saat boot.
sudo systemctl start mariadb
sudo systemctl enable mariadb
Instalasi default MariaDB dilengkapi dengan beberapa basis data pengujian dan pengguna anonim. Sebelum mengkonfigurasi basis data, Anda harus mengamankan server MariaDB terlebih dahulu. Anda dapat mengamankannya dengan menjalankan mysql_secure_installation
skrip.
sudo mysql_secure_installation
Anda akan dimintai kata sandi root MariaDB saat ini. Secara default, tidak ada kata sandi root di instalasi MariaDB baru. Tekan Enter
tombol untuk melanjutkan. Tetapkan kata sandi yang kuat untuk pengguna root dari server MariaDB Anda dan jawab Y
semua pertanyaan lain yang diajukan. Pertanyaan yang diajukan cukup jelas.
Masuk ke shell MySQL sebagai pengguna root dengan menjalankan.
mysql -u root -p
Berikan kata sandi untuk pengguna root MariaDB untuk masuk.
Jalankan pertanyaan berikut untuk membuat database dan pengguna database untuk instalasi OroCRM.
CREATE DATABASE oro_data;
CREATE USER 'oro_user'@'localhost' IDENTIFIED BY 'StrongPassword';
GRANT ALL PRIVILEGES ON oro_data.* TO 'oro_user'@'localhost';
FLUSH PRIVILEGES;
EXIT;
Anda dapat mengganti nama database oro_data
dan nama pengguna oro_user
sesuai pilihan Anda. Pastikan untuk mengubah StrongPassword
kata sandi yang sangat kuat.
OroCRM juga membutuhkan runtime JavaScript Node.js. Node.js akan digunakan oleh OroCRM untuk mengkompilasi JavaScript, yang digunakan untuk membangun antarmuka pengguna aplikasi. Repositori default CentOS berisi versi Node.js yang ketinggalan zaman, sehingga Anda perlu menambahkan repositori Nodesource ke sistem Anda untuk mendapatkan versi terbaru.
sudo curl --silent --location https://rpm.nodesource.com/setup_8.x | sudo bash -
Instal Node.js dan Git.
sudo yum -y install nodejs git
Git akan digunakan untuk mengkloning repositori OroCRM dari internet. Anda juga perlu menginstal Komposer. Komposer adalah alat pengelola ketergantungan untuk aplikasi PHP. Karena OroCRM ditulis dalam kerangka kerja Symfony, Anda akan memerlukan Composer untuk menginstal dependensi dan aplikasi.
Pasang Komposer.
php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
php composer-setup.php
php -r "unlink('composer-setup.php');"
Pindahkan Komposer ke /usr/bin
direktori sehingga dapat dieksekusi dari mana saja di sistem.
sudo mv composer.phar /usr/bin/composer
Berikan izin eksekusi kepada Komposer.
sudo chmod +x /usr/bin/composer
Ada banyak cara untuk mengunduh OroCRM di server Anda. Cara yang paling tepat untuk mendapatkan versi terbaru adalah dengan mengkloning repositori melalui Git.
Klon repositori OroCRM.
cd /usr/share/nginx/
sudo git clone -b 2.3 https://github.com/oroinc/crm-application.git orocrm
Salin parameters
file contoh ke parameters
file default yang digunakan oleh OroCRM.
cd orocrm
sudo cp app/config/parameters.yml.dist app/config/parameters.yml
Sebelum dapat melanjutkan lebih jauh, Anda perlu memperbarui parameters.yml
file untuk menyediakan basis data dan informasi email.
sudo nano app/config/parameters.yml
Temukan baris berikut.
database_driver: pdo_mysql
database_host: 127.0.0.1
database_port: ~
database_name: oro_crm
database_user: root
database_password: ~
Perbarui konfigurasi di atas sesuai dengan database yang telah Anda buat untuk menyimpan data OroCRM. Dalam kasus kami, seharusnya terlihat seperti ini.
database_driver: pdo_mysql
database_host: 127.0.0.1
database_port: 3306
database_name: oro_data
database_user: oro_user
database_password: StrongPassword
Jika Anda memiliki server SMTP dan Anda ingin segera menggunakan fitur pengiriman email, Anda dapat memperbarui pengaturan mailer seperti yang ditunjukkan.
mailer_transport: smtp
mailer_host: mail.example.com
mailer_port: 456
mailer_encryption: ssl
mailer_user: [email protected]
mailer_password: EMailPassword
Jika Anda tidak memiliki server surat yang siap, Anda dapat melewatkannya sekarang dengan meninggalkan nilai yang ada. Anda selalu dapat mengubah konfigurasi email melalui dasbor.
Setel string acak secret
dengan mengganti ThisTokenIsNotSoSecretChangeIt
. String acak diperlukan untuk menyandikan data sesi. Contoh string akan terlihat seperti ini.
secret: uxvpXHhDxCFc9yU1hV1fMwjSoyVUzGh4WBMBBBa3XEgrRUF5OuB2h8iNl9JRDqcd
Anda dapat menghasilkan string acak menggunakan pwgen
utilitas. Instal pwgen
utilitas dengan menjalankan sudo yum -y install pwgen
. Untuk menghasilkan string acak, jalankan pwgen -s 64 1
.
Simpan file dan keluar dari editor. Instal dependensi PHP yang diperlukan melalui komposer.
sudo composer install --prefer-dist --no-dev
Menggunakan --no-dev
akan memastikan bahwa Komposer hanya menginstal dependensi yang diperlukan untuk menjalankan server web dalam mode produksi. Script akan memakan waktu beberapa menit untuk mengunduh dan menginstal dependensi PHP yang diperlukan.
Instal aplikasi.
sudo php app/console oro:install --env=prod
Ini akan membangun cache web dan menulis database. The --env=prod
parameter disediakan untuk menginstal aplikasi dalam mode produksi. Instalasi hanya akan dilanjutkan jika semua dependensi yang diperlukan diinstal dan dikonfigurasi.
Selama instalasi, Anda akan ditanya beberapa pertanyaan untuk mengatur akun administrator. Pertanyaannya adalah sebagai berikut.
Administration setup.
Application URL (http://localhost): http://crm.example.com
Organization name (OroCRM): My Organization
Username (admin):
Email: [email protected]
First name: John
Last name: Doe
Password:
Load sample data (y/n): y
Berikan informasinya. Muat data sampel untuk mengevaluasi produk sebelum menggunakannya untuk produksi.
Pemanasan cache dokumentasi API:
sudo php app/console oro:api:doc:cache:clear
Buat file blok server Nginx untuk melayani aplikasi bagi pengguna.
sudo nano /etc/nginx/conf.d/orocrm.conf
Mengisi file.
server {
server_name crm.example.com;
root /usr/share/nginx/orocrm/web;
location / {
# try to serve file directly, fallback to app.php
try_files $uri /app.php$is_args$args;
}
location ~ ^/(app|app_dev|config|install)\.php(/|$) {
fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock;
fastcgi_split_path_info ^(.+\.php)(/.*)$;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param HTTPS off;
}
# Enable Gzip compression
gzip on;
gzip_buffers 16 8k;
gzip_comp_level 5;
gzip_disable "msie6";
gzip_min_length 1000;
gzip_http_version 1.0;
gzip_proxied any;
gzip_types text/plain application/javascript application/x-javascript text/javascript text/xml text/css image/svg+xml;
gzip_vary on;
# Enable browser caching
# One week for javascript and css
location ~* \.(?:css|js) {
expires 1w;
access_log off;
add_header Cache-Control public;
}
# Three weeks for media: images, fonts, icons, video, audio etc.
location ~* \.(?:jpg|jpeg|gif|png|ico|tiff|woff|eot|ttf|svg|svgz|mp4|ogg|ogv|webm|swf|flv)$ {
expires 3w;
access_log off;
add_header Cache-Control public;
}
error_log /var/log/nginx/orocrm_error.log;
access_log /var/log/nginx/orocrm_access.log;
}
Pastikan Anda mengganti crm.example.com
dengan nama domain Anda yang sebenarnya. Konfigurasi di atas juga termasuk konfigurasi yang diperlukan untuk kompresi GZip dan caching browser. Kompresi Gzip memampatkan data sebelum mengirimnya ke browser. Mengaktifkan caching browser menyimpan sumber daya statis ke cache web komputer klien. Lain kali pengguna mengakses situs, sebagian besar konten statis diambil dari cache web pengguna sendiri. Kedua metode ini meningkatkan kecepatan aplikasi secara dramatis.
Periksa file konfigurasi Nginx untuk setiap kesalahan.
sudo nginx -t
Outputnya akan terlihat seperti berikut.
[user@vultr ~]$ sudo nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
Berikan kepemilikan file OrOCRM kepada pengguna Nginx.
sudo chown -R nginx:nginx /usr/share/nginx/orocrm
Mulai ulang Nginx untuk menerapkan konfigurasi baru.
sudo systemctl restart nginx
Jika Anda menjalankan firewall di server Anda, Anda harus mengkonfigurasi firewall untuk menetapkan pengecualian untuk layanan HTTP. Izinkan Nginx untuk terhubung dari luar jaringan.
sudo firewall-cmd --zone=public --permanent --add-service=http
sudo firewall-cmd --zone=public --permanent --add-service=https
sudo firewall-cmd --reload
Anda sekarang dapat mengakses aplikasi di http://crm.example.com
. Masuk menggunakan nama pengguna dan kata sandi administrator yang Anda tetapkan selama instalasi.
Untuk secara otomatis menjalankan tugas yang dijadwalkan, Anda dapat menambahkan entri pekerjaan Cron. Terbuka crontab
.
sudo crontab -e
Tambahkan baris berikut ke file.
*/1 * * * * /usr/bin/php /usr/share/nginx/orocrm/app/console oro:cron --env=prod > /dev/null
Ini akan menjalankan tugas cron setiap menit sehingga tugas yang dijadwalkan seperti antrian email diproses paling awal.
Anda juga perlu mengatur Supervisor untuk menjalankan layanan Antrian Pesan. Diperlukan setidaknya satu proses berjalan setiap saat bagi konsumen untuk memproses pesan. Seorang konsumen biasanya dapat mengganggu proses pesan melalui banyak cara. Untuk memastikan bahwa layanan berjalan terus menerus, kami akan menggunakan layanan Supervisor. Kami akan mengonfigurasi Supervisor untuk menjalankan empat proses secara paralel. Jika salah satu dari empat proses dihentikan karena alasan apa pun, Supervisor akan mencoba memulainya lagi.
Instal Pengawas.
sudo yum -y install supervisor
Edit file konfigurasi Supervisor.
sudo nano /etc/supervisord.conf
Tambahkan baris berikut di akhir file.
[program:oro_message_consumer]
command=/usr/bin/php /usr/share/nginx/orocrm/app/console --env=prod --no-debug oro:message-queue:consume
process_name=%(program_name)s_%(process_num)02d
numprocs=4
autostart=true
autorestart=true
startsecs=0
user=nginx
redirect_stderr=true
Mulai dan aktifkan Supervisor untuk memulai secara otomatis saat boot.
sudo systemctl start supervisord
sudo systemctl enable supervisord
Anda dapat melihat status proses dengan menjalankan yang berikut ini.
sudo supervisorctl status
Anda harus melihat bahwa proses sedang berjalan.
[user@vultr ~]$ sudo supervisorctl status
oro_message_consumer:oro_message_consumer_00 RUNNING pid 13596, uptime 0:02:13
oro_message_consumer:oro_message_consumer_01 RUNNING pid 13595, uptime 0:02:13
oro_message_consumer:oro_message_consumer_02 RUNNING pid 13594, uptime 0:02:13
oro_message_consumer:oro_message_consumer_03 RUNNING pid 13593, uptime 0:02:13
OroCRM sekarang diinstal di server Anda. Anda sekarang dapat menggunakan aplikasi untuk mengelola tugas rutin organisasi Anda. Untuk mempelajari lebih lanjut tentang OroCRM, Anda dapat mengunjungi situs web resminya .
Wawasan tentang 26 Teknik Analisis Data Besar: Bagian 1
Banyak dari Anda tahu Switch keluar pada Maret 2017 dan fitur-fitur barunya. Bagi yang belum tahu, kami sudah menyiapkan daftar fitur yang membuat 'Switch' menjadi 'gadget yang wajib dimiliki'.
Apakah Anda menunggu raksasa teknologi untuk memenuhi janji mereka? periksa apa yang belum terkirim.
Baca blog untuk mengetahui berbagai lapisan dalam Arsitektur Big Data dan fungsinya dengan cara yang paling sederhana.
Baca ini untuk mengetahui bagaimana Kecerdasan Buatan menjadi populer di antara perusahaan skala kecil dan bagaimana hal itu meningkatkan kemungkinan untuk membuat mereka tumbuh dan memberi keunggulan pada pesaing mereka.
CAPTCHA telah berkembang cukup sulit bagi pengguna untuk dipecahkan dalam beberapa tahun terakhir. Apakah itu akan tetap efektif dalam deteksi spam dan bot di masa mendatang?
Saat Sains Berkembang dengan kecepatan tinggi, mengambil alih banyak upaya kita, risiko menundukkan diri kita pada Singularitas yang tidak dapat dijelaskan juga meningkat. Baca, apa arti singularitas bagi kita.
Apa itu telemedicine, perawatan kesehatan jarak jauh dan dampaknya terhadap generasi mendatang? Apakah itu tempat yang bagus atau tidak dalam situasi pandemi? Baca blog untuk menemukan tampilan!
Anda mungkin pernah mendengar bahwa peretas menghasilkan banyak uang, tetapi pernahkah Anda bertanya-tanya bagaimana cara mereka mendapatkan uang sebanyak itu? mari berdiskusi.
Baru-baru ini Apple merilis macOS Catalina 10.15.4 pembaruan suplemen untuk memperbaiki masalah tetapi tampaknya pembaruan menyebabkan lebih banyak masalah yang mengarah ke bricking mesin mac. Baca artikel ini untuk mempelajari lebih lanjut