Как я ограничиваю приложения PHP их собственными каталогами и их собственным php.ini?

Прежде всего, отметим, что классы ConsumerConnector или kafka.consumer.KafkaStream устарели в версии kafka v # 0.11.0. В случае, если вы используете старую версию, вы должны запланировать обновление до более новой версии по крайней мере v # 1.0 или более.

Будет ли метод createMessageStreams последовательно считывать данные из темы или считывать данные в определенном количестве пакетов и обрабатывать их?

blockquote>

.createMessageStreams возвращает карту темы и список KafkaStream пара. (topic,list#stream) Каждый поток поддерживает итератор для сообщений или пару метаданных для темы. Он читает данные последовательно только внутри раздела. Если у вас больше разделов, чем количество потоковых потоков, один поток может читать из нескольких разделов. Но только в пределах разделов порядок последовательности гарантирован.

  for (final KafkaStream stream : streamList) 
    {
       ConsumerIterator it= stream.iterator();
       while (it.hasNext()) 
       {
          String message = new String(it.next().message());
          System.out.println(message);
        }
      }
}

Эквивалентной функциональностью в v # 0.11 и далее является метод .poll(). Вы можете установить max.poll.records или max.poll.interval.ms, чтобы установить количество записей на запрос опроса и продолжительность интервала соответственно.

Вы можете найти нового потребителя здесь: https://kafka.apache.org/20/javadoc/org/apache/kafka/clients/consumer/KafkaConsumer.html

6
задан John Bubriski 12 March 2009 в 19:17
поделиться

6 ответов

Я полагаю, что возможно установить php.ini на виртуальный хост

<VirtualHost *:80>
    ...

    PHPINIDir /full/path/to/php/ini/

</VirtualHost>

этим путем можно настроить open_basedir и других

8
ответ дан 8 December 2019 в 17:27
поделиться

Можно ограничить способность к сценариям видеть что-либо выше определенного дерева папки путем добавления open_basedir директивы блок папки в httpd.conf файле. Это должно быть похожим:

<КАТАЛОГ,/full/path/to/folder/containing/script/>

php_admin_value open_basedir "/full/path/to/top/folder/of/desired/tree /"

</КАТАЛОГ>

Одна вещь - если Вы не заканчиваете путь / затем, это - подстановочное соответствие. Другими словами, "/var/etc/my" будет соответствовать "/var/etc/myFolder", а также "/var/etc/myMothersFolder", в то время как "/var/etc/my /" будет только соответствовать тому точному имени папки.

5
ответ дан 8 December 2019 в 17:27
поделиться

Относительно изоляции приложения ~ - это в отношении обеспечения Сценариев PHP, таким образом, они не могут получить доступ к другим? Уточните -

Относительно php.ini - я не знаю ни о каком способе использовать определенный php.ini на каталог, но Вы могли, конечно, создать php, включают страницу с набором ini_set () строки, возможно, что-то вроде этого..

<?php
  // in your header or along top of all php modules in your pap
  require_once ( '/path/to/includes/ini_set.php' );

  // ...

?>

и ini_set.php сценарий:

<?php
  // one of these for each override of defaults set in php.ini file --
  ini_set ( $varname, $newvalue );
  ini_set ( $varname, $newvalue );
  ini_set ( $varname, $newvalue );
?>

Если Вы интересуетесь получением дополнительной информации о ini_set () функция, вот страница документации на php.net: http://us3.php.net/ini_set

Надежда это было несколько полезным ~

1
ответ дан 8 December 2019 в 17:27
поделиться

Лучший способ сделать так состоит в том, чтобы использовать PHP через FCGI (mod_fcgid). Таким образом, можно выполнить PHP использование другого пользователя и различного php.ini на vHost.

Вот пример, как настроить такую конфигурацию на Ubuntu: http://www.howtoforge.com/how-to-set-up-apache2-with-mod_fcgid-and-php5-on-ubuntu-8.10

1
ответ дан 8 December 2019 в 17:27
поделиться

Если Вы хотите использовать имя полного пути, можно использовать это:

<?php
include  dirname( __FILE__ ) . '/includes/include.php';
?>

Возможное решение для файла php.ini

0
ответ дан 8 December 2019 в 17:27
поделиться

Попробуйте относительный путь! Как:

<?php
include("./includes/include.php");
?>

или

<?php
include("includes/include.php");
?>
-1
ответ дан 8 December 2019 в 17:27
поделиться
Другие вопросы по тегам:

Похожие вопросы: