JAVA заметки

Производительность
  • Тюнинг производительности JAVA от Oracle

Для тех кто нелюбит Java и говорит что она медленная.

  • Hadoop  – одна из основополагающих технологий Big Data. Написан на Java.
  • Его используют все, даже Cisco в своих серверах по анализу Data Flow Cisco Tetration Analytics.


Читать дальше

xargs: запуск утилит на список, простая многопоточность в bash

xargs позволяет легко запускать утилиты на списки аргументов, даже если утилиты не поддерживают работу со списками. Реализуется простейшим образом – xargs каждый раз заново вызывает утилиту при запуске на список. Например, можно создать на основе списка множество директорий с помощью mkdir.

Читать дальше

Excel: использование функции ВПР

Общее

В Excel есть полезная функция – ВПР. Позволяет на основе списка неких идентификаторов извлечь из таблицы значения атрибутов этих идентификаторов.

Сравнение ВПР с другими вариантами решения задачи:

  • ВПР – подходит для небольших объемов данных. По опыту попытка получения данных по 100к значениям в таблице из 300к строк требовала неимоверное время для расчета и в результате пришлось решать задачу по-другому. 


Читать дальше

Curl/wget разное

https://httpie.org/ – а еще есть такая “модная” альтернатива curl/wget

 

CURL

отправка GET и POST переменных

GET: curl “https://weril.me/?s=curl”

~$ curl "https://weril.me/?s=curl" 2>/dev/null | grep "page-title" 
 <h1 class="page-title">Search Results for: curl</h1>

POST: curl -d “s=curl” “https://weril.me/”

~$ curl -d "s=curl" "https://weril.me/"


Читать дальше

Ruby: парсинг и модификация WEB страниц с Nokogiri и Mechanize

Парсить страницу через curl + regexp можно, но только в простых сценариях. В противном случае проще и надежнее использовать библиотеки.

Mechanize и Nokogiri похожи. Насколько я понимаю Mechanize использует Nokogiri для своей работы. Оба Gem могут использовать html объекты для парсинга/манипуляции (nokogiri так же может работать с xml).

Читать дальше

Microsoft Word разное (стили и глюки, память на диске и temp)

Повторное использование одной и той же сноски
Повторное использование одной и той же сноски достигается за счет перекрестной ссылки.
word вписать таблицу в страницу по ширине

Очень часто возникает задача вставить таблицу в документ Word из внешнего источника (WEB/Excel). При такой вставке границы таблицы могут заходить за пределы листка.

Читать дальше

HP LoadRunner, IBM RPT

HP LoadRunner – утилита для нагрузочного (и не только, по аналогии с JMeter) тестрования. С помощью нее можно создавать разные запросы на сайт/приложение/БД и анализировать отдачу. Можно писать скрипты. Бесплатная лицензия на 50 пользователей.

Как понимаю прямой конкурент:

IBM RPT – Rational Performance Tester.

Читать дальше

PHP работа с MySQL используя PDO

В коде страницы выглядит так. Используются функция в файле mysql_con.php и класс с несколькими функциями в файле mysql_oper.php.
require __DIR__ . 'mysql_con.php';
$db = DB();
require __DIR__ . 'mysql_oper.php';
$app = new TestClass($db);
$res = $app->Funname($username);
mysql_con.php – создаем коннект к BD.


Читать дальше

Работа с Google Authenticator

Использовал Google Authenticator в проекте по аутентификации на базе PHP. Работа с Google Authenticator идет через класс PHPGangsta_GoogleAuthenticator.

По умолчанию при первичной регистрации, происходит генерация QR-кода (я QR-код заменил на ссылку т.к. основные пользователи – мобильные, а не стационарные). В этом коде содержится URL с username, secret, service-name и редирект на приложение по мультифакторной аутентификации.

Читать дальше

PHP cookie, session

При использовании PHP-сессий данные хранятся не в куках. В куках хранится только идентификатор сессии, а уже по нему на серваке смотрятся данные для этой сессии. Схема безопасней, чем все хранить в cookies.
Папку с php-сессиями можно узнать (обычно это /var/lib/php):
echo session_save_path();


Читать дальше