J'ai mis en œuvre un courtier de service sur l'une de mes bases de données et j'ai traité avec succès des messages avec ma propre application C # en suivant ce tutoriel. http://devkimchi.com/811/service-broker-external-activator-for-sql-server-step-by-step-1/
J'ai pu installer avec succès le SSBEA sur mon serveur SQL Development SQL, il fonctionne comme annoncé. Cependant, de la lecture de la documentation, je peux exécuter SSBEA sur un autre serveur autre que par serveur de base de données.
Comment puis-je accomplir cela? J'ai une machine de 2e Windows 2012 et j'ai installé SSBEA avec mon service d'application, tout est identique dans le fichier de configuration.
remarque Le fichier Easervice.Config ci-dessous, donc sur mon serveur SQLDEV Windows 2012, tout fonctionne bien, sur My Clouddev Windows 2012 Server, le service SSBEA ne parvient pas à démarrer, les deux fonctionnent avec le même compte "admin". J'ai choisi Admin pour que les choses fonctionnent. Et ils font sur Sqldev, mais ils ne sont pas sur Clouddev.
Des conseils sont utiles pour moi, dois-je installer des outils client SQL Server sur Clouddev?
<NotificationServiceList>
<!-- Event Notification Name from Sql Server -->
<NotificationService name="myNotificationService" id="100" enabled="true">
<Description>My Notification Service</Description>
<ConnectionString>
<!-- All connection string parameters except User Id and Password should be specificed here -->
<Unencrypted>server=sqldev;database=CloudDev;Application Name=AppServiceBroker;Integrated Security=true;</Unencrypted>
</ConnectionString>
</NotificationService>
</NotificationServiceList>
<ApplicationServiceList>
<ApplicationService name="AppServiceBroker" enabled="true">
<OnNotification>
<ServerName>sqldev</ServerName>
<DatabaseName>CloudDev</DatabaseName>
<SchemaName>dbo</SchemaName>
<QueueName>myRequestQueue</QueueName>
</OnNotification>
<LaunchInfo>
<ImagePath>C:\appSB\AppServiceBroker.exe</ImagePath>
<CmdLineArgs></CmdLineArgs>
<WorkDir>C:\appSB</WorkDir>
</LaunchInfo>
<Concurrency min="1" max="1" />
</ApplicationService>
</ApplicationServiceList>
* Modifier: comme demandé, le seul message d'erreur apparaît dans le journal système de la SSBEA ne démarre pas:
Log Name: System
Source: Service Control Manager
Date: 3/24/2016 2:29:33 PM
Event ID: 7000
Task Category: None
Level: Error
Keywords: Classic
User: N/A
Computer: CLOUDDEV.mynet.local
Description:
The Service Broker External Activator service failed to start due to the following error:
The service did not respond to the start or control request in a timely fashion.
Event Xml:
<Event xmlns="http://schemas.Microsoft.com/win/2004/08/events/event">
<System>
<Provider Name="Service Control Manager" Guid="{555908d1-a6d7-4695-8e1e-26931d2012f4}" EventSourceName="Service Control Manager" />
<EventID Qualifiers="49152">7000</EventID>
<Version>0</Version>
<Level>2</Level>
<Task>0</Task>
<Opcode>0</Opcode>
<Keywords>0x8080000000000000</Keywords>
<TimeCreated SystemTime="2016-03-24T21:29:33.445869600Z" />
<EventRecordID>23653</EventRecordID>
<Correlation />
<Execution ProcessID="556" ThreadID="5736" />
<Channel>System</Channel>
<Computer>CLOUDDEV.mynet.local</Computer>
<Security />
</System>
<EventData>
<Data Name="param1">Service Broker External Activator</Data>
<Data Name="param2">%%1053</Data>
<Binary>530053004200450078007400650072006E0061006C0041006300740069007600610074006F0072000000</Binary>
</EventData>
</Event>
J'ai également pris la liberté d'installer les outils client SQL Server, mais il n'y a pas eu de changement, le service ne parvient toujours pas à démarrer.
MS GET démarré avec l'utilisation de l'activateur externe SBEA Réponses Comment installer et configurer SBEA, mais elle ne mentionne pas que sur votre serveur, vous devez disposer de .NET 3.5 installé, sous Windows 2012, vous ajoutez ceci en tant que serveur. Caractéristique/Rôle cette pile sur la réponse à l'écoulement Détails des détails Comment obtenir cela installé en 2012, car il nécessite l'aide de l'ISO d'origine.