/** * Copyright (C) 2014-2020 ServMask Inc. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . * * ███████╗███████╗██████╗ ██╗ ██╗███╗ ███╗ █████╗ ███████╗██╗ ██╗ * ██╔════╝██╔════╝██╔══██╗██║ ██║████╗ ████║██╔══██╗██╔════╝██║ ██╔╝ * ███████╗█████╗ ██████╔╝██║ ██║██╔████╔██║███████║███████╗█████╔╝ * ╚════██║██╔══╝ ██╔══██╗╚██╗ ██╔╝██║╚██╔╝██║██╔══██║╚════██║██╔═██╗ * ███████║███████╗██║ ██║ ╚████╔╝ ██║ ╚═╝ ██║██║ ██║███████║██║ ██╗ * ╚══════╝╚══════╝╚═╝ ╚═╝ ╚═══╝ ╚═╝ ╚═╝╚═╝ ╚═╝╚══════╝╚═╝ ╚═╝ */ if ( ! defined( 'ABSPATH' ) ) { die( 'Kangaroos cannot jump here' ); } class Ai1wm_Export_Content { public static function execute( $params ) { // Set archive bytes offset if ( isset( $params['archive_bytes_offset'] ) ) { $archive_bytes_offset = (int) $params['archive_bytes_offset']; } else { $archive_bytes_offset = ai1wm_archive_bytes( $params ); } // Set file bytes offset if ( isset( $params['file_bytes_offset'] ) ) { $file_bytes_offset = (int) $params['file_bytes_offset']; } else { $file_bytes_offset = 0; } // Set content bytes offset if ( isset( $params['content_bytes_offset'] ) ) { $content_bytes_offset = (int) $params['content_bytes_offset']; } else { $content_bytes_offset = 0; } // Get processed files size if ( isset( $params['processed_files_size'] ) ) { $processed_files_size = (int) $params['processed_files_size']; } else { $processed_files_size = 0; } // Get total content files size if ( isset( $params['total_content_files_size'] ) ) { $total_content_files_size = (int) $params['total_content_files_size']; } else { $total_content_files_size = 1; } // Get total content files count if ( isset( $params['total_content_files_count'] ) ) { $total_content_files_count = (int) $params['total_content_files_count']; } else { $total_content_files_count = 1; } // What percent of files have we processed? $progress = (int) min( ( $processed_files_size / $total_content_files_size ) * 100, 100 ); // Set progress Ai1wm_Status::info( sprintf( __( 'Archiving %d content files...
%d%% complete', AI1WM_PLUGIN_NAME ), $total_content_files_count, $progress ) ); // Flag to hold if file data has been processed $completed = true; // Start time $start = microtime( true ); // Get content list file $content_list = ai1wm_open( ai1wm_content_list_path( $params ), 'r' ); // Set the file pointer at the current index if ( fseek( $content_list, $content_bytes_offset ) !== -1 ) { // Open the archive file for writing $archive = new Ai1wm_Compressor( ai1wm_archive_path( $params ) ); // Set the file pointer to the one that we have saved $archive->set_file_pointer( $archive_bytes_offset ); // Loop over files while ( list( $file_abspath, $file_relpath, $file_size, $file_mtime ) = fgetcsv( $content_list ) ) { $file_bytes_written = 0; // Add file to archive if ( ( $completed = $archive->add_file( $file_abspath, $file_relpath, $file_bytes_written, $file_bytes_offset ) ) ) { $file_bytes_offset = 0; // Get content bytes offset $content_bytes_offset = ftell( $content_list ); } // Increment processed files size $processed_files_size += $file_bytes_written; // What percent of files have we processed? $progress = (int) min( ( $processed_files_size / $total_content_files_size ) * 100, 100 ); // Set progress Ai1wm_Status::info( sprintf( __( 'Archiving %d content files...
%d%% complete', AI1WM_PLUGIN_NAME ), $total_content_files_count, $progress ) ); // More than 10 seconds have passed, break and do another request if ( ( $timeout = apply_filters( 'ai1wm_completed_timeout', 10 ) ) ) { if ( ( microtime( true ) - $start ) > $timeout ) { $completed = false; break; } } } // Get archive bytes offset $archive_bytes_offset = $archive->get_file_pointer(); // Truncate the archive file $archive->truncate(); // Close the archive file $archive->close(); } // End of the content list? if ( feof( $content_list ) ) { // Unset archive bytes offset unset( $params['archive_bytes_offset'] ); // Unset file bytes offset unset( $params['file_bytes_offset'] ); // Unset content bytes offset unset( $params['content_bytes_offset'] ); // Unset processed files size unset( $params['processed_files_size'] ); // Unset total content files size unset( $params['total_content_files_size'] ); // Unset total content files count unset( $params['total_content_files_count'] ); // Unset completed flag unset( $params['completed'] ); } else { // Set archive bytes offset $params['archive_bytes_offset'] = $archive_bytes_offset; // Set file bytes offset $params['file_bytes_offset'] = $file_bytes_offset; // Set content bytes offset $params['content_bytes_offset'] = $content_bytes_offset; // Set processed files size $params['processed_files_size'] = $processed_files_size; // Set total content files size $params['total_content_files_size'] = $total_content_files_size; // Set total content files count $params['total_content_files_count'] = $total_content_files_count; // Set completed flag $params['completed'] = $completed; } // Close the content list file ai1wm_close( $content_list ); return $params; } } Điện toán đám mây là gì? Cách thức hoạt động - Vay Tài Chính 247

Điện toán đám mây là gì? Cách thức hoạt động

Điện toán đám mây đã thay đổi cách chúng ta lưu trữ và truy cập dữ liệu trong công nghệ thông tin. Thay vì phải dùng các thiết bị lưu trữ dữ liệu truyền thống như ổ cứng, USB hay máy chủ cá nhân, điện toán đám mây cho phép chúng ta lưu trữ và truy cập dữ liệu thông qua internet. Đây là một công nghệ linh hoạt, tiện lợi và scalable, mở ra nhiều ứng dụng hấp dẫn trong nhiều lĩnh vực khác nhau.

Điện toán đám mây là gì?

Điện toán đám mây là một khái niệm trong công nghệ thông tin, cho phép chúng ta lưu trữ và truy cập dữ liệu thông qua internet. Thay vì phải dùng các thiết bị lưu trữ dữ liệu truyền thống như ổ cứng, USB hay máy chủ cá nhân, chúng ta có thể lưu trữ dữ liệu trên các máy chủ từ xa, được quản lý bằng phần mềm và thiết bị mạng. Người dùng có thể truy cập vào dữ liệu và ứng dụng thông qua internet từ bất kỳ đâu miễn là có kết nối internet.

Đặc điểm nổi bật của điện toán đám mây

Khả năng linh hoạt và scalable

Một trong những đặc điểm nổi bật của điện toán đám mây là khả năng linh hoạt và scalable. Người dùng có thể mở rộng hay giảm thiểu lưu trữ theo nhu cầu thực tế mà không cần đầu tư vào thêm phần cứng hay thiết bị mạng. Điều này giúp tiết kiệm chi phí và tăng tính linh hoạt trong việc quản lý dữ liệu.

Truy cập từ xa

Hệ thống đám mây cho phép truy cập từ xa, điều này giúp người dùng có thể làm việc từ bất kỳ đâu miễn là có kết nối internet. Điều này rất hữu ích cho các công ty có nhân viên làm việc từ xa, giúp tăng tính hiệu quả và linh hoạt trong công việc. Ngoài ra, trong lĩnh vực giáo dục, học sinh và giáo viên có thể truy cập vào tài liệu học trực tuyến từ bất kỳ đâu, giúp nâng cao chất lượng giáo dục và tiếp cận kiến thức một cách tiện lợi.

Ứng dụng của điện toán đám mây

Lưu trữ và chia sẻ dữ liệu

Các công ty thường sử dụng dịch vụ đám mây để lưu trữ và chia sẻ dữ liệu. Thay vì phải sử dụng các thiết bị lưu trữ truyền thống, công ty có thể lưu trữ dữ liệu trên các máy chủ đám mây, đảm bảo tính an toàn và tiện lợi. Điều này giúp các công ty tiết kiệm được không gian vật lý và giảm thiểu rủi ro mất mát dữ liệu.

Giáo dục trực tuyến

Trong lĩnh vực giáo dục, điện toán đám mây đóng vai trò quan trọng trong việc cung cấp tài liệu học trực tuyến. Học sinh và giáo viên có thể truy cập vào tài liệu học, bài giảng và tài nguyên từ bất kỳ đâu thông qua internet. Điều này giúp nâng cao chất lượng giáo dục và tiếp cận kiến thức một cách tiện lợi.

Kinh doanh trực tuyến

Trong lĩnh vực kinh doanh, điện toán đám mây cung cấp một nền tảng cho các ứng dụng và dịch vụ trực tuyến. Các doanh nghiệp có thể sử dụng điện toán đám mây để triển khai các ứng dụng như email doanh nghiệp, livestream và quản lý dự án. Điều này giúp tăng tính linh hoạt và tiện lợi trong việc quản lý và phát triển kinh doanh.

Phục hồi dữ liệu

Mất dữ liệu và sự cố máy tính có thể xảy ra, và trong trường hợp này, điện toán đám mây cung cấp một giải pháp phục hồi dữ liệu hiệu quả. Dữ liệu được sao lưu và lưu trữ trên các máy chủ đám mây, đảm bảo tính an toàn và khả năng khôi phục dữ liệu nhanh chóng.

Cách điện toán đám mây hoạt động

Điện toán đám mây hoạt động thông qua việc lưu trữ dữ liệu trên các máy chủ từ xa, được quản lý bằng phần mềm và thiết bị mạng. Dữ liệu và ứng dụng được lưu trữ trên các máy chủ và người dùng có thể truy cập vào chúng thông qua internet. Hệ thống đám mây này được xây dựng với nhiều máy chủ được phân bổ trong nhiều vùng địa lý khác nhau để đảm bảo tính sẵn sàng và ổn định.

Tổng kết

Điện toán đám mây đã thay đổi cách chúng ta lưu trữ và truy cập dữ liệu trong công nghệ thông tin. Điện toán đám mây mang đến tính linh hoạt và tiện lợi trong việc quản lý dữ liệu và ứng dụng. Bằng cách lưu trữ dữ liệu trên các máy chủ từ xa và cho phép người dùng truy cập thông qua internet, điện toán đám mây đã tạo ra một giải pháp lưu trữ dữ liệu hiệu quả và tiện lợi, với ứng dụng rộng rãi trong nhiều lĩnh vực khác nhau.


Bài được vaytaichinh247.net tổng hợp từ nhiều nguồn khác nhau cho bạn đọc tham khảo.